gpt4 book ai didi

sql - 条件 where 子句?

转载 作者:行者123 更新时间:2023-12-02 21:30:03 26 4
gpt4 key购买 nike

我想应用条件where子句,也就是说,如果我的barcode参数为空,那么我想获取所有记录,如果它带有值,那么我只想获取与第二部分我能够获取匹配的记录,但我坚持在获取空值的情况下获取所有记录,我已尝试如下,

 SELECT item 
FROM tempTable
WHERE
((ISNULL(@barcode,0)=1)
// but this is not fetching all the records if barcode is null
OR
ISNULL(@barcode,0!= 1 AND tempTable.barcode LIKE @barcode+'%'))
//THis is working perfect

所以任何帮助都会很棒

最佳答案

我可能误解了你的问题,但逻辑OR运算符可能会有所帮助:

SELECT item 
FROM tempTable
WHERE
@barcode IS NULL OR tempTable.barcode LIKE @barcode+'%'

如果@barcodeNULL,则返回所有记录,当@barcode不为NULL时,返回所有记录满足条件LIKE @barcode+'%'

重要

此外,请记住使用 OR当与多个复杂条件 AND 一起使用并且未正确括在大括号中时,运算符似乎会导致有趣的结果:

<A> AND <B> AND <C> OR <D> AND <E> AND <F>

实际上很可能应该表述为:

(<A> AND <B> AND <C>) OR (<D> AND <E> AND <F>)

记住,解析器不知道你想要实现什么,你必须正确描述你的意图......

关于sql - 条件 where 子句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18737482/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com