繁体   English   中英

在Oracle / SQL中如何选择列的值保持不变的行

[英]In Oracle/SQL how to select rows where the value of the columns remained the same

在Oracle / SQL中如何选择列的值保持不变的行

我有一份预算清单,每个预算分布在12个月以上,每月固定工资。 我想返回一份预算清单,其薪资价值在12个月内保持不变。

BUDGET MONTH SALARY
5468 1              1500
5468 2              1500
5468 3              1500
5468 4              1500
5468 5              1500
5468 6              1500
5468 7              1500
5468 8              1500
5468 9              1500
5468 10             1500
5468 11             1500
5468 12             1500

3456 1              1675
3456 2              1675
3456 3              1675
3456 4              1675
3456 5              1500
3456 6              1500
3456 7              1500
3456 8              1500
3456 9              1675
3456 10             1675
3456 11             1675
3456 12             1675

3948 1              2900
3948 2              2900
3948 3              2900
3948 4              2900
3948 5              2900
3948 6              2900
3948 7              2900
3948 8              2900
3948 9              2900
3948 10             2900
3948 11             2900
3948 12             2900

9756 1              2900
9756 2              2900
9756 3              2900
9756 4              2900
9756 5              2900
9756 6              2900
9756 7              2900
9756 8              2900
9756 9              2900
9756 10             2900
9756 11             2900
9756 12             2900

9712 1              2743
9712 2              2900
9712 3              2900
9712 4              2900
9712 5              2743
9712 6              2900
9712 7              2743
9712 8              2900
9712 9              2900
9712 10             2743
9712 11             2900

5394 1              1500
5394 2              1500
5394 3              1500
5394 4              1500
5394 5              1500
5394 6              1500
5394 7              1500
5394 8              1500
5394 9              1500
5394 10             1500
5394 11             1500
5394 12             1500

计算每个预算的distinct薪水

select budget
from your_table
group by budget
having count(distinct salary) = 1
SELECT BUDGET,SALARY FROM BUDTGET_TAB
HAVING COUNT(MONTH)=12
GROUP BY BUDGET,SALARY
ORDER BY 1,2
SELECT BUDGET,SALARY FROM BUDTGET_TAB
GROUP BY BUDGET,SALARY
HAVING COUNT(MONTH)=12
ORDER BY 1,2;

我刚重新安排了由Dharmesh编写的查询...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM