我有一个查询,如:Mysql的查询多个选项
SELECT bp.*, b.company
FROM `DBPREFIXwindows_brands_products` bp
LEFT JOIN `DBPREFIXwindows_brands` b ON bp.brand_id = b.id
JOIN Windows_last_submissions ls
WHERE bp.width = ROUND(ls.width)
AND bp.height = ROUND(ls.height)
AND bp.material = ls.chosenmaterial
AND bp.type = ls.type
AND IF
(ls.minimumbid != 'NULL',bp.cost BETWEEN (ls.minimumbid AND ls.maximumbid),bp.cost <= ls.maximumbid)
领域“chosenmaterial”来自一个选择框,可容纳多个选项。我的问题是,在这个查询中 - 我如何使WHERE子句工作,以便如果一个人选择多于1个选项(显然用逗号分隔成行),我如何查询包含任何和所有这些选项的任何内容? ?
在具有单选项时也是因为该选项出现麻烦addition..I'm“选项”,并在最后是否逗号有一个选项或多个选项。很明显,这会干扰查询。如果有任何“这些选项在'bp.material'行中”,请查询以上所有内容? –
选择多个选项,(显然分开成逗号排) - 显而易见?不是我。请解释 – Strawberry
对不起。材料行从具有不同值的选择框中填充(总共5个)。现在的数据类型是“Char”(我之前使用“varchar”的结果相同)。如果用户选择一个选项 - 它会在数据库中显示为“乙烯基”,后面跟着逗号......以及他们选择的相同,比如说“乙烯树脂,木头”。当我输入这个时,我想知道它是否来自我使用的窗体...或者可能我可以删除查询中的“,”字符? –