Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL:分两列搜索_Mysql_Sql - Fatal编程技术网

MySQL:分两列搜索

MySQL:分两列搜索,mysql,sql,Mysql,Sql,如何在两列中搜索字符串: 用户表:(结构) 如何在“名字”和“姓氏”中搜索字符串,例如: search phrase "pra" return uid => 2 谢谢,我发现concat的开销比两次全文或搜索要快。假设不区分大小写 SELECT ID FROM tableName WHERE CONCAT(First_name,Last_Name) like '%PRA%' 或 这是典型的方法 SELECT ID FROM TableName WHERE FIRST_NAME L

如何在两列中搜索字符串:

用户表:(结构)

如何在“名字”和“姓氏”中搜索字符串,例如:

search phrase "pra"
return 
uid => 2

谢谢,

我发现concat的开销比两次全文或搜索要快。假设不区分大小写

SELECT ID 
FROM tableName
WHERE CONCAT(First_name,Last_Name) like '%PRA%'

这是典型的方法

SELECT ID 
FROM TableName
WHERE FIRST_NAME LIKE '%PRA%'
OR LAST_NAME LIKE '%PRA%'

要在两个单独的列中查询一个值,需要将这些列放在SELECT语句中,用逗号分隔,然后在WHERE语句中指定要比较的值:

SELECT first_name, last_name 
FROM tableName 
WHERE first_name LIKE '%PRA%' OR last_name LIKE '%PRA%';

其中名如“pra*”或姓如“pra*”
除非我混淆了语法或误读了您的问题。
从名为“”和姓为“”的表格中选择*。真正的基本问题。在这里发布之前阅读教程。如果您的意思是“一部分”,则必须使用:
从表中选择*,其中名为“%pra%”,姓为“%pra%”。如果只有一列符合您的条件,请将
替换为
|
SELECT first_name, last_name 
FROM tableName 
WHERE first_name LIKE '%PRA%' OR last_name LIKE '%PRA%';