sql - 在 MySQL SELECT 字段中使用 LIKE

标签 sql mysql

我一直在尝试选择做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`

最佳答案

你需要使用:

SELECT t.my_column AS did_match
  FROM YOUR_TABLE t
 WHERE t.my_column LIKE '%thepattern%'

YOUR_TABLE 替换为您的表的名称...

如果没有 FROM 子句,MySQL(和 SQL Server)将允许查询,但不会针对任何数据。

关于sql - 在 MySQL SELECT 字段中使用 LIKE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3002132/

相关文章:

php - 同一个网站,如何将 POST 从 HTTP 发送到 HTTPS?它一直空着

sql - 转换为连接查询

php - 持续检查MySQL表更新的最佳方法是什么?

php清理输出表单数组

php - Gears 和 Mysql 同步

mysql - 检索每组中的最后一条记录 - MySQL

sql - GROUP by ITEM number 和 Quantity to Stock 的总和

mysql - 比较 2 列的 SQL 查询

sql - 哪里都不是空的

java - 处理包含撇号的大字符串 SQL