Chr*_*oot 4 sql t-sql datetime compare sql-server-2005
我想知道在ms-sql(2005)中是否有可能出现以下内容
SELECT(expiry <getdate())AS过期FROM MyTable WHERE(ID = 1)
我基本上想要评估日期与布尔值的比较,这是否可能在语句的选择部分?
gbn*_*gbn 10
不是直接的.你必须使用CASE,CAST意味着它被客户端代码解释为boolean
SELECT
CAST(CASE WHEN expiry < getdate() THEN 1 ELSE 0 END AS bit) AS Expired
FROM
MyTable WHERE (ID = 1)
Run Code Online (Sandbox Code Playgroud)
另一种解决方案,其中预期有一行或零行:
SELECT
CAST(COUNT(*) AS bit) AS Expired
FROM
MyTable
WHERE
ID = 1 AND expiry < getdate()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7616 次 |
| 最近记录: |