SQL case when 语句问题
(CASE WHEN exists(SELECT top 1 B.TAXUP
FROM ANT B LEFT JOIN ANTUDF A ON (B.PANNO=A.PANNO and B.ITEMNO=A.ITEMNO)
WHERE B.CODE=RESVT.CODE AND A.WO like @gd AND B.TAXUP > 0 )
THEN
(SELECT top 1 B.TAXUP
FROM ANT B LEFT JOIN ANTUDF A ON (B.PANNO=A.PANNO and B.ITEMNO=A.ITEMNO)
WHERE B.CODE=RESVT.CODE AND B.TAXUP > 0 )
WHEN exists(
SELECT TOP 1 B.TAXUP
FROM ANT B LEFT JOIN ANTUDF A ON (B.PANNO=A.PANNO and B.ITEMNO=A.ITEMNO)
WHERE B.CODE=RESVT.CODE AND B.TAXUP > 0 order by B.[DATETIME] desc )
THEN
(SELECT TOP 1 B.TAXUP
FROM ANT B LEFT JOIN ANTUDF A ON (B.PANNO=A.PANNO and B.ITEMNO=A.ITEMNO)
WHERE B.CODE=RESVT.CODE AND B.TAXUP > 0 order by B.[DATETIME] DESC)
ELSE
(select TOP 1 TAXUP from VQUT WHERE VQUT.CODE=RESVT.CODE order by DATETIME DESC)
END)
他的执行方式是从上往下执行,如果第一条语句没有结果再执行下一条语句。是这样的嘛?
为什么我这里他执行结果不对。
第一条语句单独执行有结果。那它应该就不会再往下执行了。 但是当我把CASE 让到一条SQL中去执行时它得到的结果跟我单独执行结果不同呢?
...全文
相关推荐
oracle where case when where后面跟case when
在`where case when.sql`这个文件中,可能包含了实际的SQL查询示例,展示如何在`WHERE`子句中运用`CASE WHEN`进行数据筛选。
MySQL中使用case when 语句实现多条件查询的方法
`CASE WHEN` 语句通常用于在SQL查询中根据不同的条件返回不同的结果。
SQL中的case…when…还能这么用(计算好评率、计算出有条件的字段的数量)
SQL中的`CASE…WHEN…`语句是数据库查询中非常强大的工具,它允许你在单个查询中执行复杂的条件逻辑,生成动态值,以及进行数据转换。以下将详细讲解几个使用`CASE…WHEN…`的场景及其应用。
sql数据库 转 Access SQL语句改写之 Case When Then When Then Else End
### SQL数据库转Access SQL语句改写:Case When Then When Then Else End#### 知识点一:SQL CASE WHEN THEN 结构与Access IIF
关于case when语句的报错问题详解
在上述问题中,尝试使用如下语句:```sqlSELECT CASE substr(id_card_no, 17, 1) WHEN (1, 3, 5, 7, 9) THEN '男' WHEN (0, 2,


疑难问题
