您好我该如何使这个查询工作。我想在where子句上有条件,如果@BACHNUMB ='', 然后WHERE是(h.sopnumbe = @SOPNUMBE)Else WHERE是(h.bachnumb = @BACHNUMB)。提前谢谢。
WHERE
CASE(@BACHNUMB)
WHEN '' THEN (h.sopnumbe = @SOPNUMBE)
ELSE
(h.bachnumb = @BACHNUMB)
END
答案 0 :(得分:4)
只需通过不同的语法重新创建逻辑:
WHERE
(@BACHNUMB = '' AND h.sopnumbe = @SOPNUMBE)
OR
(@BACHNUMB != '' AND h.bachnumb = @BACHNUMB)
END
答案 1 :(得分:2)
(@BACHNUMB = '' and h.sopnumbe = @SOPNUMBE) or (@BACHNUMB != ' and 'h.bachnumb = @BACHNUMB)