Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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_Database_Mariadb - Fatal编程技术网

Mysql 从多个表中选择相同的数据并忽略其他列

Mysql 从多个表中选择相同的数据并忽略其他列,mysql,sql,database,mariadb,Mysql,Sql,Database,Mariadb,我试图从多个共享一些公共数据的表中选择行 表1和表2中的常见数据是:名称、内容,但表2使用uname而不是名称,但它们是相同的 表2有一个额外的日期和U列,我想忽略它,但按U搜索 表1有一个额外的列,名为country,我忽略了它 实际上,我正在运行2个查询,而不是1个 我正在运行的两个查询是: SELECT DISTINCT name, content FROM table1 WHERE name LIKE '%foo%' SELECT DISTINCT uname, content, u F

我试图从多个共享一些公共数据的表中选择行

表1和表2中的常见数据是:名称、内容,但表2使用uname而不是名称,但它们是相同的

表2有一个额外的日期和U列,我想忽略它,但按U搜索 表1有一个额外的列,名为country,我忽略了它

实际上,我正在运行2个查询,而不是1个

我正在运行的两个查询是:

SELECT DISTINCT name, content FROM table1 WHERE name LIKE '%foo%'
SELECT DISTINCT uname, content, u FROM table2 WHERE uname LIKE '%foo%' AND U = 1
我试过这样的方法:

SELECT DISTINCT t1.*, t2.* FROM table1 t1, table2 t2 WHERE t1.name LIKE '%foo%' AND t2.uname LIKE '%foo%' AND t2.U = 1
但它并没有像我想要的那样工作,我怀疑在谈论绩效时它是否有好处


我非常感谢您的帮助

从您描述的您希望加入过滤:

select . . .  -- whatever columns you want here
from table1 t1 join
     table2 t2
     on t1.name = t2.uname
where t1.name LIKE '%foo%' and t2.u = 1;

示例数据和期望的结果将非常有用。是否可以在多个列上连接到?例如,如果t2中的内容是ucontent?在t1.name=t2.uname上变为t1.name=t2.uname和t1.content=t2.ucontent,对吗?@niqacoder。是的,如果这是您想要的联接条件。