2012-12-04 2 views
1

MySQL 쿼리를 해결하는 데 어려움을 겪고 있습니다. 내가 아래에 게시 한 쿼리를 만들려고했지만 올바른 값을 반환하지 않습니다. 예를 들어 고객 테이블에서 "John Smith"를 검색하면 John Smith가 아닌 다른 항목을 반환합니다.간단한 MySQL 고객 테이블에서 하나의 고객 이름을 반환하는 쿼리

SELECT customerName 
    FROM Customer 
WHERE customerName < 'John Smith'; 
+2

where 절에 오타가 있습니까? 'customerName = 'John Smith''을 원한다고 가정합니다. – ethorn10

답변

1

이 Btw는 SELECT customerName FROM Customer WHERE customerName = 'John Smith';

아니면 SELECT customerName FROM Customer WHERE customerName LIKE '%John%Smith%';

을 시도해보십시오

은 쿼리입니다. 쿼리에서 John Smith보다 작은 customerName을 검색합니다. 대부분의 데이터베이스는 내가 생각하기에 알파벳순으로 낮은 이름을 모두 제공합니다. 항상 이름을 하나만 지정하면 LIMIT 1을 쿼리에 추가하는 것이 좋습니다.

+0

LIKE 메소드를 제안하려고했습니다. 그래도 작동하지 않으면 표에서 데이터 유형을 다시 확인하십시오. 나는 x = 1이 작동하지 않는 이유를 알아 내려고 10 분을 보냈다. 그리고 "x"가 int 대신 varchar로 설정되었다는 사실이 밝혀졌다. – Jon

0
SELECT customerName FROM Customer WHERE customerName LIKE '%John%Smith%'; 

MySQL 포럼을 확인하고 기본 SQL 구문을 익히는 것이 좋습니다.