MySQL 数据库查询返回空结果
Posted
技术标签:
【中文标题】MySQL 数据库查询返回空结果【英文标题】:MySQL database query returns empty result 【发布时间】:2012-10-21 22:48:33 【问题描述】:我正在进行数据迁移,并通过一次连接获得简单查询的空结果。以下是查询
Select * from users u INNER JOIN temp_users tu ON tu.uid = u.uid
两个表中有数百条具有相同uid的记录,但此查询仅返回一条记录。
以下是表格的结构
users table
uid: varchar(50) utf8_general_ci Yes NULL
temp_users table
uid: varchar(50) utf8_general_ci Yes NULL
【问题讨论】:
可能你只有一个匹配的记录。 尝试左连接而不是内连接 如果您确定应该有匹配项,请从您的表中发布一些数据... 是的。从您认为应该加入但未加入的每个表中发布至少一行的数据。 我怀疑你在其他地方有问题......不是查询。如果两个表中确实有一些具有相同 id 的行,则必须得到结果 【参考方案1】:试试这个..
Select * from users u INNER JOIN temp_users tu ON trim(upper(tu.uid)) = trim(upper(u.uid));
可能没有匹配的 id b/w 表格.. 确认使用..
Select u.id,tu.id from users u LEFT JOIN temp_users tu ON trim(upper(tu.uid)) = trim(upper(u.uid));
【讨论】:
左连接正在给出结果。这意味着它们不匹配,但是当我在 users 表上搜索它们时它存在。 @user1791096:问题是 temp_users 表中没有相同的 uid 记录 我通过在 temp_users 表中搜索记录来检查它。它们在那里,但是当我使用 JOIN 时,我没有显示结果。甚至子查询也没有给出结果。我该怎么办 ??? mysql我也重启过很多次了,还是不行。 我尝试匹配的用户 ID 采用以下格式:66b69e14-5452-4f40-8fef-ffff9245da7e。 无论如何,根据给定的示例,它们应该匹配.. OP 必须从表中发布一些数据。以上是关于MySQL 数据库查询返回空结果的主要内容,如果未能解决你的问题,请参考以下文章
踩坑记录Mysql查询使用group_concat函数后,如果查询无结果,仍会返回一条空数据
踩坑记录Mysql查询使用group_concat函数后,如果查询无结果,仍会返回一条空数据