在mySQl中连接表-警告:#1292截断了不正确的DOUBLE值



我正在尝试连接mySQL上的两个表,其中一个表有一个与特定人员关联的ID,另一个表则有一条已发送给网站上人员的消息。为了将一条特定的消息与它发送给的特定的人联系起来,我正在尝试进行内部加入。然而,我收到警告:

#1292截断了不正确的DOUBLE值。

有人能提供建议吗?

我的内部加入如下:

SELECT gymafi_admin.id, gymafi_admin_tominbox.message 
FROM gymafi_admin 
INNER JOIN gymafi_admin_tominbox ON gymafi_admin.id = gymafi_admin_tominbox.message

非常感谢!

此联接条件看起来不正确:

ON gymafi_admin.id = gymafi_admin_tominbox.message

据推测,左边的列是一个数字(表示用户的id(,而右边有一个字符串(消息(。这将解释您收到的警告,因为MySQL会尝试将字符串(message(转换为整数值以进行比较。

我确实怀疑右侧的列应该是其他列,它存储用户的id。假设这个列被称为admin_id,那么您的查询将看起来像:

SELECT a.id, i.message 
FROM gymafi_admin a
INNER JOIN gymafi_admin_tominbox i ON a.id = i.admin_id

请注意,我添加了表别名以缩短它并使其更可读。

最新更新