使用Where的SQL查询出错

时间:2013-02-28 17:24:34

标签: mysql sql where

我正在尝试制作一个查询,其中显示地址为 ZIP为1391,1393,1396,1426,1427,以及3400和3433之间的所有拉链。

SELECT ZIP, HOUSE_NR, APPARTMENT_NR, VerzBedrag
FROM werkelijke_inboedels
WHERE ProductLine = 'inboedel'
AND Product_Option = 'Inboedel All Risk' OR 'Inboedel Extra Uitgebreid'
AND ZIP = %'1391'% OR %'1393'% OR %'1396'% OR %'1426'% OR %'1427'%
AND ZIP > %'3400'%
AND ZIP < %'4133'%

有人可以更改右边的查询吗?

3 个答案:

答案 0 :(得分:4)

您只需使用INBETWEEN按预期方式处理查询。 此处不需要模式匹配。

SELECT  *
FROM    tableName
WHERE   ProductLine = 'inboedel' AND 
        Product_Option IN ('Inboedel All Risk','Inboedel Extra Uitgebreid') AND
        (
            ZIP IN (1391, 1393, 1396, 1426, 1427) OR
            ZIP BETWEEN 3400 AND 3433
        )

答案 1 :(得分:4)

AND ZIP IN ('1391', '1393', '1396', '1426', '1427')
OR  ZIP BETWEEN  '3400' AND '4133'

答案 2 :(得分:0)

外卡在引号内:

'%1391%'

这些与LIKE运算符一起使用。