강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

챙준님의 프로필 이미지
챙준

작성한 질문수

김영한의 실전 데이터베이스 - 기본편

문제와 풀이

ORDER BY '이름' 과 ORDER BY 이름

작성

·

8

0

ORDER BY '이름' 으로 정렬을 하면 의도대로 정렬이 안되고, ORDER BY 이름 또는 이름 으로 정렬을 하면 의도대로 실행이 되는데 무슨 차이인지 잘 모르겠습니다ㅠ

 

'이름' 실행결과

스크린샷 2025-10-01 오후 10.55.18.png

 

이름 또는 이름 실행 결과

스크린샷 2025-10-01 오후 10.55.48.png

 

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. 챙준님께서 질문하신 ORDER BY 구문에서 따옴표 사용으로 인한 차이에 대해 설명드리겠습니다.

SQL에서의 따옴표 사용은 종종 혼동을 일으킬 수 있습니다. 다음과 같이 사용목적이 다릅니다:

  1. ‘이름’ (Single Quotes): 일반적으로 SQL에서 단일 따옴표는 문자열 리터럴을 지정할 때 사용됩니다. 예를 들어, WHERE 조건에서 특정한 문자열 값을 조회하기 위해 사용됩니다. ‘이름’을 단일 따옴표로 감싸면 문자열 리터럴로 해석되기 때문에, SORTED BY ‘이름’은 ‘이름’이라는 문자열로 해석되어 원하는 결과가 나오지 않을 수 있습니다.

  2. 이름 또는 이름 (Backticks or No Quotes): 백틱(`)은 MySQL에서 열 이름을 지정할 때 사용되며, 특히 열 이름이 SQL의 예약어나 공백 및 특수 문자가 포함된 경우 안전하게 열 이름으로 인식되도록 합니다. 백틱을 사용하지 않는 경우도 정상적으로 인식됩니다.

그래서 ORDER BY '이름'은 ‘이름’ 그 자체로 정렬하라는 의미로 잘못 사용되고 있는 반면, ORDER BY 이름 또는 ORDER BY \이름``은 실제로 열의 데이터를 기준으로 정렬하게 됩니다.

아래의 질문은 이러한 이해를 돕기위해 도움이 될 수 있습니다:
- GROUP BY 에서 ORDER BY 를 사용했을 때 오류: 비슷한 주제로, GROUP BY와 ORDER BY를 사용할 때 발생할 수 있는 오류 및 이해도를 높이기 위한 실무 사례가 포함되어 있습니다.
- 동적 order by..: ORDER BY에 조건을 유연하게 적용해야할 때 고려해야 하는 사항들을 다루고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

챙준님의 프로필 이미지
챙준

작성한 질문수

질문하기