如何在MySQL中检索符合类似要求的字符/单词,而不是整行
可以用作参考点的表格:如何在MySQL中检索符合类似要求的字符/单词,而不是整行,mysql,Mysql,可以用作参考点的表格: CREATE TABLE TEST ( Owner varchar(64) DEFAULT NULL, Devices varchar(64) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO TEST (Owner,Devices) VALUES ('Peter', 'laptop,phone,tablet'), ('Joe', 'phone,laptop,tablet'), ('Eu
CREATE TABLE TEST (
Owner varchar(64) DEFAULT NULL,
Devices varchar(64) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO TEST (Owner,Devices) VALUES
('Peter', 'laptop,phone,tablet'),
('Joe', 'phone,laptop,tablet'),
('Eugene', 'phone,tablet,laptop');
mysql> SELECT Owner, Devices FROM TEST WHERE Devices LIKE '%Laptop%';
+--------+---------------------+
| Owner | Devices |
+--------+---------------------+
| Peter | laptop,phone,tablet |
| Joe | phone,laptop,tablet |
| Eugene | phone,tablet,laptop |
+--------+---------------------+
3 rows in set (0.00 sec)
LIKE操作符查找某个模式,但MySQL结果不仅显示匹配的模式,而且显示具有匹配模式的整个字符串。
请告知是否有以下方式显示结果:
+--------+---------------------+
| Owner | Devices(LIKE result)|
+--------+---------------------+
| Peter | laptop |
| Joe | laptop |
| Eugene | laptop |
+--------+---------------------+
3 rows in set (0.00 sec)
提前谢谢你 只需在选择框中使用您要查找的单词:
SELECT Owner, "Laptop" FROM TEST WHERE Devices LIKE '%Laptop%';
“笔记本电脑”只返回您键入的内容。不幸的是,这不是一个解决方案:(我不明白你的意思。如果你手动使用“laptop”这个词,那么你可以手动键入两次。如果你在变量中使用它,那么你可以像在Where子句中一样轻松地将变量插入查询的Select部分。我只想看到该子句(select语句中的LIKE提到)mysql查找。不是整个字符串“Laptop”可以用这里的任何单词表示。无论哪个单词将替换“Laptop”在您的示例中,它将被显示。LIKE无法使用它。我之前的评论仍然有效。您是如何手动或通过编程语言(如PHP)键入此内容的?似乎语法中存在错误,无法让我对其进行测试:(
declare device varchar(50)
set device = 'laptop'
select Owner , device as Devices from test where Devices
like '%' + device + '%';