php - 匹配以单词显示,而不是 mysql 中的数字

标签 php mysql database mysqli

我有一个 select 语句试图从数据库中选择匹配项,但在获得结果后,匹配项是单词,而不是数字。

SELECT DATA ,  
"CASE WHEN data LIKE  '%one two%' THEN 2 
ELSE CASE WHEN data LIKE '%one%' THEN 1
ELSE 0
END
END
END" AS  'matches'
FROM remember
LIMIT 0 , 30

结果:

列匹配:

"CASE WHEN data LIKE  '%love%' THEN 2" ELSE CASE W...
"CASE WHEN data LIKE  '%love%' THEN 2" ELSE CASE W...
"CASE WHEN data LIKE  '%love%' THEN 2" ELSE CASE W...

预期结果:

列匹配:

2
1
0

最佳答案

您不需要多次使用 CASE:

SELECT CASE WHEN data LIKE  '%one two%' THEN 2 
            WHEN data LIKE '%one%' THEN 1
            ELSE 0 
            END AS  'matches'

关于php - 匹配以单词显示,而不是 mysql 中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33114941/

相关文章:

php - 获取文件的独占读/写锁以进行原子更新

MYSQL - 不在所有范围之间

ruby-on-rails - Heroku Drop Table Rails 帮助

PHP Laravel 高效提要生成

PHP 行为怪异,混淆了 HTML 标记

java - Java构建MySQL查询的有效方法

mysql - 改用MyISAM引擎是否有助于提高读取操作的速度?

c# - 如何在 C# 中连接到数据库并遍历记录集?

python - 如何使用 SQLAlchemy 从数据库中获取当前日期和时间

php - AHAH 是否存在安全风险?