1
아마도이 작업을 수행하기위한 쉬운 방법이있을 수 있습니다. 그러나 잠시 동안 생각하고 검색하여 대답을 찾지 못하는 것 같습니다. 나는 기본적으로 결과를 제한하려고 시도하지만 제한을 넘는 진행 행이 동일하면 제한보다 더 많이 포함합니다. 나는 같은 것을 할 것입니다 결과를 제한하기를 원할 경우Laravel 한도이지만 상단에있는 경우 한도를 초과하여 반환하십시오.
Name Score
John 5
Mike 4
Lucy 3
Sara 3
Thea 2
:이 나에게 세 가지 결과를 얻을 것이다
$topthree = Users::orderBy('score','desc')->limit(3)->get();
을,하지만 어떻게 내가 또한 사라을 포함 할 것 (에서 예제 데이터 예를 들어,), 그녀는 또한 상위 3 점에 속해 있기 때문에?
필자는 필자가 필요로하는 것 이상을 반환하고 추가 필터링을하는 것을 고려해 봤지만 더 좋은 방법이 있다고 가정합니다. 어떤 도움을 주셔서 감사합니다!
을 너는 무엇을 원하는가? 이 목록에 새라를 원한다면 상위 3 가지 논리 만 있으면됩니다. 그래서 여기에 추가적인 논리가 있어야합니다. – Imran
두 단계만으로 진행할 수 없습니까? 1) 3 번째 점수를 얻고, 2) 모든 사용자에게 점수> =를 부여하십시오. –
'SELECT Name, Score FROM
답변
두 가지 쿼리를 사용해 볼 수 있습니다.
먼저 3 위의 점수를 얻을 :
그런 점수 적어도 모든 사용자 얻을 수 :
또한 하위 쿼리와 함께 작동 수도 :
출처
2017-12-16 15:42:07
관련 문제