의 출력에서 첫 번째 결과를 선택합니다. oracle의 하위 쿼리에서 첫 번째 결과와 마지막 결과를 선택하려고합니다. "rownum"시퀀스를 완전히 변경하는 "order by"를 사용하기 때문에 "rownum"을 사용할 수 없습니다.
pls는 몇 가지 해결책을 제안합니다. 고맙습니다. fr 도움말.하위 쿼리
Q
하위 쿼리
-1
A
답변
0
첫 번째 값과 마지막 값을 모두 원하기 때문에 "rownum"을 사용할 수 없습니다. 그렇지 않으면 코드를 하위 쿼리에 넣고 선택하고 외부 쿼리에서 rownum으로 필터링하여 rownum을 사용할 수 있습니다. 그대로, ROW_NUMBER() 분석 함수 등을 사용해야합니다 (첫 번째와 마지막 결과를 하나의 단일 외부 쿼리로 얻을 수 있도록 ... 및 desc ... by order와 함께 ...)
동점이 가능한 경우 DENSE_RANK를 사용하면 첫 번째 (또는 마지막) 행을 연결하는 대신 ROW_NUMBER()가 첫 번째 (또는 마지막) 행을 연결하는 행 중 하나 "특히" , 무작위
당신은, 예를 참조하여 문제에 대한 샘플 데이터를 제공하려면
당신이 집계 쿼리가있는 경우 은 그게 위해 설계 무엇
0
사용 keep
입니다 그것은 다음과 같은 형태.... :
select t.*,
first_value(outcome) over (partition by x order by datetime) as first_outcome,
last_value(outcome) over (partition by x order by datetime) as last_outcome
from t;
0
난 (...로 순서)로 OVER ROW_NUMBER() 함수를 사용하여이를 해결 :
select x,
max(outcome) keep (dense_rank first order by datetime asc) as first_outcome,
max(outcome) keep (dense_rank first order by datetime desc) as last_outcome,
from t
group by x;
사용
first_value()
last_value()
과는 응집이없는 경우.
관련 문제
- 1. MySQL 쿼리/하위 쿼리
- 2. 하위 쿼리 내의 하위 쿼리 - 가능합니까?
- 3. 하위 쿼리 결과를 사용하여 하위 쿼리
- 4. 하위 쿼리 결과의 하위 집합을 쿼리 하시겠습니까?
- 5. SQL의 하위 쿼리 하위 쿼리 - DB2
- 6. 하위 쿼리 내의 SQL 하위 쿼리
- 7. 하위 쿼리
- 8. 하위 쿼리
- 9. 하위 쿼리
- 10. 하위 쿼리
- 11. 하위 쿼리
- 12. 하위 쿼리
- 13. 하위 쿼리
- 14. 하위 쿼리
- 15. 하위 쿼리
- 16. 하위 쿼리
- 17. 하위 쿼리
- 18. 하위 쿼리
- 19. 하위 쿼리
- 20. 하위 쿼리
- 21. 하위 쿼리
- 22. 하위 쿼리
- 23. MSSQL 쿼리 최적화 (하위 쿼리, 상관 하위 쿼리)
- 24. 잠시 동안 쿼리 하위 쿼리
- 25. MYSQL 쿼리/하위 쿼리 병합
- 26. SQL 쿼리 또는 하위 쿼리
- 27. 쿼리 또는 하위 쿼리 조인
- 28. MySQL의 최적화 쿼리 : 하위 쿼리
- 29. NHibernate - 예제 쿼리 - 하위 쿼리
- 30. 하위 쿼리 자체로 mysql concat 하위 쿼리 결과가
예 OVER와 함께 ROW_NUMBER()를 사용했는데 효과가있었습니다. thnx – user4036695