그래서 두 개의 별도 테이블이 있습니다. 첫 번째 표에는 ID가있는 여러 광고 그룹이 있습니다. 두 번째 테이블에는 각 광고에 대한 ad_group ID가 포함 된 열이있는 광고 모음이 있습니다. ad_group_id는 광고 그룹 표의 광고 그룹 ID입니다. 따라서 ad_group_id가 103, 104,105,107,117117 및 120 인 광고를 모두 선택하려고합니다.다른 테이블에서 값 선택
그래서 다음 쿼리를 시도했습니다.
SELECT * FROM ads WHERE ad_group_id LIKE '%103%' OR ad_group_id LIKE '%104%'
OR ad_group_id LIKE '%105%' OR ad_group_id LIKE '%107%' OR ad_group_id LIKE '%117%' OR ad_group_id LIKE '%118%' OR ad_group_id LIKE '%120%';
이전 쿼리가 작동 했습니까? 예
내 쿼리가 효율적 이었습니까? 아니!
보다 효율적인 방법으로 이전 MySQL 쿼리를 어떻게 실행할 수 있는지 궁금합니다.
편집 :
AD GROUP - table 1
id name
100 Tony
100 David
103 James
104 Ann
105 Jon
150 Sara
AD - table 2
keyword ad_group_id
that 103
one 100
is 105
special 104
no 100
please 103
그래서 내가와 끝까지해야 의미가 있습니다
that 103
is 105
special 104
please 103
희망.
편집 2 :
다음 코드는 같은 결과를 제공하고 짧은,하지만 난 선택해야 더 많은 값이있을 때 나는이 일을 상상할 수 없다.
SELECT * FROM ads WHERE ad_group_id IN (103,104,105,107,117,118,120);
귀하의 질문에 완전히 명확하지 않습니다. 이 테이블에있는 데이터의 예와 찾고있는 결과를 추가 할 수 있습니까? – Oded
왜 '좋아'할까요? 왜 '='가 아닌가? –
필자는 SQL을 처음 접했고 어떤 이유로 든 필요한 특정 값을 가지고 있지 않으면 항상 필자는 항상 사용합니다. – ATMathew