我有两列column_a(INT)
和column_b(INT)
。我想做一个select查询,它给出了列中不包含我给出的值的值。
例如:
column_a| column_b
5 | 10
如果我去SELECT (something over here) FROM TABLE WHERE column_a = 10 OR column_b = 10;
结果应该推出 5 (column_a
中的值。
这甚至可能吗?
注意: 10 的值可以在任一列中。因此,如果column_a
中的 10 和column_b
中的 5 ,则上述查询仍然应该 5 但它将从column_b
而不是column_a
注2:两列永远不会包含相同的值。
答案 0 :(得分:1)
在您的设计示例中,您可以使用CASE
语句尝试从两列中选择不匹配的值:
SELECT CASE WHEN column_a = 10 THEN column_b ELSE column_a END
FROM yourTable
WHERE column_a = 10 OR column_b = 10 -- this might be optional