1. --------------------------------------------------------------------------
select v.*
,(CASE WHEN prt.ReportNum <> 0 THEN '是' ELSE '否' END) AS '是否打印'
from v
LEFT JOIN Stuff_IN prt
ON prt.In_ID = v.入库编号
2. --------------------------------------------------------------------------
select v.*
, prt.[是否打印]
from v
LEFT JOIN (SELECT IN_ID, (CASE WHEN ReportNum <> 0 THEN ''是'' ELSE ''否'' END) AS ''是否打印'' FROM Stuff_IN) prt
ON prt.In_ID = v.入库编号
1, 2 哪个快。
------解决思路----------------------
这个不一定,的看实际的执行计划。
------解决思路----------------------
写法1应该会快一点,但相差不大.
------解决思路----------------------
因为第一种写法在进行case when操作的数据集较少,所以应该快点