제가 잘못 알고 있나요?

제가 잘못 알고 있나요?

QA

제가 잘못 알고 있나요?

답변 2

본문

select * from shop_member where mb_id between 'a' and 'b'

 

이렇게 쿼리문을 날리면 아이디가 a로 시작하는거나 b로 시작하는거

 

모두 나와야하는거 아닌가요?

 

a로 시작하는 것만 나오네요...ㅠ

이 질문에 댓글 쓰기 :

답변 2

between절은 범위를 검색하는 거고 질문 내용대로 찾으시려면

like절 쓰셔야 합니다

 

SELECT * FROM shop_member WHERE mb_id LIKE 'a%' OR LIKE 'b%';

네..그렇습니다.
a부터 b까지 자료를 뽑아내야하지요.
그런데 a만 나온다는 거지요.
select * from shop_member where mb_id between 'a' and 'g'
이렇게 날리면 a,b,c,d,e,f 까지만 나와요~ㅎ

a로 시작하는 것만 나오네요...ㅠ

<----당연하죠

mb_id between 'a' and 'b' ==> mb_id >= 'a' and  mb_id <= 'b' 이렇게 되는데

아이디가 b한글자로만 되어있다면 당연히 출력 됩니다

그러나 아이디가 bbbb, b1234, basdfg, best1234 이런 것은 b보다 크죠 그러니 당연히 안 나옵니다

따라서 mb_id between 'a' and 'c' 이렇게 해야 a, b로 시작하는 아이디가 나옵니다

( c한글자로만 된 아이디는 없으니 c로 시작하는 아이디는 출력 되지않습니다)

 

 

 

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 123,726
© SIRSOFT
현재 페이지 제일 처음으로