我一直在尝试选择进行LIKE
比较的状态:
SELECT (`my_column` LIKE '%thepattern'%) AS `did_match`
谢谢!
编辑:只是为了澄清这个被使用所以我可以得到这个:
SELECT
(CASE WHEN `title` LIKE '%keyword%' THEN 20 ELSE 0 END) +
(CASE WHEN `desc` LIKE '%keyword%' THEN 10 ELSE 0 END)
AS `match`
FROM myTable
ORDER BY `match`
答案 0 :(得分:2)
您需要使用:
SELECT t.my_column AS did_match
FROM YOUR_TABLE t
WHERE t.my_column LIKE '%thepattern%'
将YOUR_TABLE
替换为您的表名...
如果没有FROM
子句,MySQL(和SQL Server)将允许查询,但不允许任何数据。
答案 1 :(得分:1)
我不确定我是否理解这个问题,看起来OMG小马已经比我更好地解决了这个问题,但是如果这有帮助:
SELECT CASE WHEN `my_column` LIKE '%thepattern%'
THEN 'did_match' ELSE 'no_match' END CASE AS MYTEST
FROM ...