sql - 我如何在sql server中的where条件中使用case语句
问题描述
我有这个代码。我想CASE
在子句中使用一个语句WHERE
,但它不会运行:
SELECT
pdc_distribution,
pdc_refund,pdc_type,
pdc_amount
FROM user_pdc_informations
WHERE
(
CASE WHEN pdc_type='D'
THEN (created_at BETWEEN 1583951400 AND 1584037799)
ELSE 1
END
)
AND sport_id = 4
AND user_id = 7
AND match_id = 29743945
如何在此查询中使用 case 条件?
解决方案
考虑OR
改用:
SELECT
pdc_distribution,
pdc_refund,pdc_type,
pdc_amount
FROM user_pdc_informations
WHERE
(pdc_type <> 'D' OR created_at BETWEEN 1583951400 AND 1584037799)
AND sport_id = 4
AND user_id = 7
AND match_id = 29743945
推荐阅读
- asp.net-mvc - 使用实体框架将数据保存到数据库后无法清除文本框值并打印成功消息
- javascript - Discord.js Send 在 unban 命令中未定义
- python - plot_confusion_matrix() 使用 sklearn 得到了一个意外的关键字参数“类”
- ios - 在返回之前获取 Observable 数组的计数
- javascript - 如何测试一个反应连接的组件以及测试什么组件?
- github - 是否有指向 GitHub 的链接,用于从标记有最新版本的 repo 下载文件?
- mysql - 关系 MySQL 查询
- function - 基于节假日节点的暂停时间 红色
- c++ - 具有空参数包的一元折叠
- python-3.x - 将日期时间索引更改为秒