sql - 如何在 SQL (Redshift) 中使用 IF 条件进行选择?
问题描述
我有一个 5 列的表。具有值“A”、“B”、“C”和“D”的列 1 和具有从 0 到 20 的 int 值的另一个列 2,列 3、列 4 和列 5 具有其他值,目前不重要。
我想选择表中的所有记录,但不选择 column1 值“B”中的记录。但是,colum1 值为“B”的记录应满足 column2 中的值 > 10 的条件。如果它们在 column2 中为 ex。15、我们可以将它们包含在select中。
这个怎么选?
SELECT
column1
, column2
, column3
, column4
, column5
FROM tableA
WHERE
only_include_values_B_from_column1_IF_it_has_in_column2_value_superior_than_10
解决方案
如果我理解正确,你想要OR
:
SELECT column1, column2, column3, column4, column5
FROM tableA a
WHERE column1 <> 'B' OR column2 > 10
推荐阅读
- scala - Scala Akka 框架集成测试
- r - 如何在 Shiny 的 renderText() 中换行
- spring - 为什么 loadUserByUsername 方法会抛出空异常?
- python - 在本地打开一个变压器保存的模型
- javascript - 无法调整 React-Player 视频的大小
- javascript - 在响应中管理数据 - Node.js
- c++ - 如何在模板类之外定义构造函数?
- android - android getSubscriptions 为我的 id 提供了空数组,但使用此“android.test.purchased”测试 id react-native-iap
- reactjs - 打字稿如何在对象中键入自定义键
- python-3.x - 在每个请求上轮换代理 python3