작성
·
371
1
정렬해줄 때 이해가 잘 되지 않는데요 ㅠㅠ
이름의 끝에 철자가 3개가 같으면 두번째 정렬 기준을 id로 해주라는 뜻인가요..?
그러면 id도 오름차순으로 정렬되기 때문에 구분이 되는건지.. ㅠㅠ
답변 6
0
ORDER BY RIGHT(name,3), ID
2. 만약 RIGHT(name,3)가 똑같은
이부분만 가지고
'
데이터가 2개 이상 있을 경우'가
if를 사용 하지 않아도 적용 되는 것인가요?
0
@정지운님
해당 게시글에 문의 남겨주셔서 부득이하게 이쪽으로 답변드립니다.
블로그 게시와 관련된 내용은 아래 질문에 대한 답변을 참고하시면 될 것 같습니다.
https://www.inflearn.com/questions/73544
감사합니다.
0
안녕하세요 u_innovation님
SELECT name
;FROM students
;WHERE marks > 75
;ORDER BY RIGHT(name,3), ID
이때, ORDER BY를 해석하자면
만약 이름 컬럼에 있는 데이터가 끝에서 3개의 이름(철자)이 같은 것이 있다면, ID를 기준으로 정렬해라는 뜻 맞나요..?
예시로 주신 쿼리에서 ORDER BY의 내용은
1. 우선 데이터를 RIGHT(name, 3)으로 오름차순 정렬을 하되
2. 만약 RIGHT(name,3)가 똑같은 데이터가 2개 이상 있을 경우
3. 그 데이터들은 ID를 기준으로 오름차순 정렬을 해주어라
라는 뜻으로 해석하시면 됩니다.
ORDER BY가 계속 헷갈리신다면 데이터를 이용해서 여러가지 기준으로 직접 정렬을 해보시고 데이터가 어떻게 출력되는지 확인해보시면 더 빠르게 익히실 수 있을 거에요.
궁금증이 해결되셨길 바랍니다 :)
감사합니다.
0
0
0
SELECT name
;FROM students
;WHERE marks > 75
;ORDER BY RIGHT(name,3), ID
이때, ORDER BY를 해석하자면
만약 이름 컬럼에 있는 데이터가 끝에서 3개의 이름(철자)이 같은 것이 있다면, ID를 기준으로 정렬해라는 뜻 맞나요..?