>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 숫자 값을 포함하는 Varchar 열을 어떻게 정렬할 수 있습니까?

MySQL에서 숫자 값을 포함하는 Varchar 열을 어떻게 정렬할 수 있습니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-03 07:31:03672검색

How Can I Sort Varchar Columns Containing Numeric Values in MySQL?

MySQL에서 Varchar 열의 숫자 정렬

숫자 값이 포함된 varchar 열을 처리할 때 숫자로 정렬하는 것이 어려울 수 있습니다. 이 문제를 해결하는 한 가지 접근 방식은 "* 1" 표현식을 사용하는 것입니다.

숫자 정렬에 "* 1" 사용

"라는 varchar 열이 있는 테이블을 생각해 보세요. "17.95", "199.95", "139.95"와 같은 값을 포함하는 number_as_char"입니다. 이 열을 숫자로 정렬하려면 다음 쿼리를 사용할 수 있습니다.

<code class="mysql">SELECT *
FROM tbl
ORDER BY number_as_char * 1;</code>

"* 1" 표현식은 varchar 값을 숫자 값으로 효과적으로 변환합니다. 선행하는 0이나 기타 숫자가 아닌 문자에 관계없이 열을 숫자로 정렬할 수 있습니다.

"* 1" 사용의 이점

"* 사용 1" 표현식은 여러 가지 장점을 제공합니다.

  • 강건성: 일부 행에 숫자가 아닌 데이터만 있는 상황을 처리할 수 있습니다.
  • 정확도: 적절한 캐스팅 유형을 선택할 때 언더플로를 방지하는 데 도움이 됩니다.
  • 유연성: 영숫자 데이터에서 숫자 부분을 제거하여 "123A" 및 "125A"와 같은 값을 정렬할 수 있습니다.

위 내용은 MySQL에서 숫자 값을 포함하는 Varchar 열을 어떻게 정렬할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.