Q&A

  • SQL복수로 자료를 검색하려면...
복수로 자료를 검색하고 싶습니다.



예를 들어 이름과 주소가 같은 사람을 말이죠.



EX_1) 이름에 '이'가 들어간 사람과

query1.sql.add('SELECT * FROM "juso.dbf" WHERE NAME "%이%"');



EX_2) 주소에 '쌍문'이 들어간 사람만을 DBGRID에 뿌리고 싶습니다.

query1.sql.add('SELECT * FROM "juso.dbf" WHERE JUSO "%쌍문%"');

2  COMMENTS
  • Profile
    aaa 2000.02.25 02:59
    배움이 wrote:

    > 복수로 자료를 검색하고 싶습니다.

    >

    > 예를 들어 이름과 주소가 같은 사람을 말이죠.

    >

    > EX_1) 이름에 '이'가 들어간 사람과

    > query1.sql.add('SELECT * FROM "juso.dbf" WHERE NAME "%이%"');

    >

    > EX_2) 주소에 '쌍문'이 들어간 사람만을 DBGRID에 뿌리고 싶습니다.

    > query1.sql.add('SELECT * FROM "juso.dbf" WHERE JUSO "%쌍문%"');



    and, or 로 역으시면 되겠는데....쩝...



    query1.sql.add('SELECT * FROM "juso.dbf" WHERE NAME like "%이%" and JUSO like "%쌍문%"');



    이런식으로 하면 자료가 많아지면 많아질수로 거의 환상적인 속도가 나오겠군요...(속도저하!)



    아스타(*)를 쓰시는 것보단 필요한 필드만 불러 쓰세요..



    그리고 like를 쓰시면 인덱스를 사용하지 못해요...



    좀더 구체적인 where조건을 구현하시면 좋겠습니다.



  • Profile
    조복기 2000.02.25 02:55
    배움이 wrote:

    > 복수로 자료를 검색하고 싶습니다.

    >

    > 예를 들어 이름과 주소가 같은 사람을 말이죠.

    >

    > EX_1) 이름에 '이'가 들어간 사람과

    > query1.sql.add('SELECT * FROM "juso.dbf" WHERE NAME "%이%"');

    >

    > EX_2) 주소에 '쌍문'이 들어간 사람만을 DBGRID에 뿌리고 싶습니다.

    > query1.sql.add('SELECT * FROM "juso.dbf" WHERE JUSO "%쌍문%"');





    안녕하세요..



    Like문이 빠진듯싶네요.. 좋은하루되세요



    예) 성이 '이'씨이며 동네가 '쌍문동'인 사람 검색

    with query1 do

    begin

    Close;

    SQL.Clear;

    SQL.Add('SELECT * FROM "juso.dbf" ');

    SQL.Add(' WHERE NAME LIKE "%이%" ');

    SQL.Add(' AND JUSO LIKE "%쌍문%" ');