我不知道这是否可能:
SELECT * FROM stuff WHERE barcode = '123123' OR product like '%123123%'
假设这返回10行。10行中有2行因为条形码中有123123而被返回。
现在是否可以通过某种方式创建别名/变量来知道它的出现是因为它与条形码匹配。
所以我可以:
if($MatchWasFromBarcode) {.... }
或者我需要对此进行两次查询吗?
最佳答案
SELECT case when barcode='your_value' then 1 else 0 end as matches_bar_code
, col1
, col2
, col3
, col4
FROM stuff
WHERE barcode = '123123'
OR product like '%123123%'
不要做
select *
。坏习惯。列出所需的列。