2017-09-10 11 views
-1

안녕하세요 얘들 아, 문제가 데이터베이스에서 "FLOAT"의 데이터 형식을 가진 예약어는 "변경"라는 열 정렬.MySql 플로팅 데이터 형식을 정렬

다른 방법을 시도했지만 여전히 얻을 수 없습니다.

"select * from data order by CAST('change' AS SIGNED) DESC"; 
"select * from data order by ABS(change) DESC"; 
"select * from data order by ABS(change - float) DESC"; 
"select CAST(change as float) AS ABC* from data order by ABC DESC"; 

은 내가 다른 조합을 많이 시도하지만 여전히 운이 enter image description here

은을 heres 내 샘플 데이터베이스 의 사진은 사전에 감사 없습니다!

+1

MySQL은 구분 된 식별자에 백틱을 사용합니다. – jarlh

+0

* "아직 행운 아님"* - 행운이 없다? 정렬 할 때? 또는 구문 오류가 발생합니까? – axiac

+0

이 질문을 확인하십시오 : https://stackoverflow.com/questions/11321491/when-to-use-single-quotes-double-quotes-and-backticks-in-mysql – axiac

답변

1

를 사용하여 다시 각 RDBMS가 예약어를 처리하는 다른 방법이

ORDER BY `CHANGE` DESC 

틱. MySQL은 back tick을 사용한다 :`

당신이 가진 오류는 캐스팅과 아무런 관련이 없다.

+0

백 진드기가 작동합니다! 그 점에 대해 감사드립니다. 거의 3 시간의 작은 따옴표를 사용하고, 문장을 다시 배열하여 다시해야합니다. 다시 한 번 감사드립니다! – Gray

0

'sagi'라는 사용자가 제안한대로 'change'라는 예약어를 사용하면 캐스팅이나 작은 따옴표가 필요하지 않지만 원래의 질문에는 역마자가 적용됩니다. 키워드는 키워드 1의 왼쪽에 있습니다. 다들 감사 해요!