2012-05-26 3 views
1

나는 더 큰 것을 사용하여 데이터베이스에서 무언가를 어떻게 선택할 수 있습니까? 이 코드하지만 행운을 사용하여 이상으로 mysql 순서

I

SELECT *FROM X WHERE Y=:5 **ORDER BY (Z > 5) DESC LIMIT 5** 

임 그냥 Z가 5보다 큰하지만 그 중 5 곳

+0

오류 메시지 텍스트를 게시하십시오. – Quassnoi

답변

1

당신이있어 무엇을 아주 확실하지 않다 X를 받으려고 하려고하는 것. 그러면 필드가 5보다 큰 테이블 X의 첫 번째 다섯 개의 튜플이 선택됩니다. 또한 출력은 Z 필드로 정렬됩니다.

SELECT * FROM X WHERE Y > 5 ORDER BY Z DESC LIMIT 5 
0

이것은 작동하지 않습니다 ... 필드로 주문하고 조건을 순서대로 넣지 마십시오. 아마 당신은 당신이 제한없이 결과를 얻을이 시도 할 수 있습니다 생각

SELECT * FROM X WHERE Y=5 and Z > 5 ORDER BY Z DESC LIMIT 5 
2

같은 시도 할 수 있습니다 :

SELECT * FROM X WHERE Y = 5 AND Z > 5 ORDER BY Z DESC 

을 그리고 당신이 정말로 당신의 결과를 제한해야하는 경우 :

SELECT * FROM X WHERE Y = 5 AND Z > 5 ORDER BY Z DESC LIMIT 5 

확인 당신을 위해 만든이 바이올린 : http://sqlfiddle.com/#!2/56f17/3

희망 i 도와 줘!