搜索过滤列

时间:2018-10-09 14:23:40

标签: sql postgresql

使用Postgres,我需要对具有9列的表进行文件搜索,我只需要其中4列,第一列,第二列,第六列和第七列。

我需要的是只有这4列的搜索结果,其中第6列和第7列是不同的,并保持结果的第1,2,6和7 这是第6位和第7位是孩子和奖金的示例

对此我还很陌生,如果您能向我展示如何获得此结果,我将不胜感激。

psql=> select employee_id, registration, children, bonus from rewards_plan;
    employee_id   |  registration  | children | bonus  
--------------------+--------+----------+--------------
        65000 | 180047     |        1 |       1
        76000 | 154177     |        1 |       0
        97000 | 223181     |        2 |       1
        16000 | 195381     |        1 |       0
        25000 | 301554     |        1 |       1

1 个答案:

答案 0 :(得分:1)

WHERE子句不限于SELECT列表中的列。

您可以使用:

select employee_id, registration, children, bonus 
from rewards_plan
where sixth_column <> seventh_column;

如果这两列可以包含NULL值,则可能要使用“空安全”比较:

select employee_id, registration, children, bonus 
from rewards_plan
where sixth_column is distinct from seventh_column;