显示错误行的mysql查询
我有一个查询,当前应该只显示一行。然而,它以某种方式显示了4行作为其结果集,即使1)表中只有三行以2)只有一行与查询条件匹配 我希望有人知道我在这个MySql查询中做错了什么 我的数据库表结构如下所示 smsid (int, auto increment), sms_type (text), sms_status (enum 'pending',sent'), sms_error (test), sms_message(text), sms_mp3file (varchar 50), sms_sendon (datetime), send_sms_toid (int 5)显示错误行的mysql查询,mysql,Mysql,我有一个查询,当前应该只显示一行。然而,它以某种方式显示了4行作为其结果集,即使1)表中只有三行以2)只有一行与查询条件匹配 我希望有人知道我在这个MySql查询中做错了什么 我的数据库表结构如下所示 smsid (int, auto increment), sms_type (text), sms_status (enum 'pending',sent'), sms_error (test), sms_message(text), sms_mp3file (varchar 50), sms_
SELECT sms_messages.*, sms_recipients.cust_profid, sms_recipients.sms_cellnumber,
customer_smsnumbers.sms_number, customer_smsnumbers.sms_number
FROM sms_messages, sms_recipients, customer_smsnumbers
WHERE sms_messages.sms_type='mp3' AND sms_messages.sms_sendon <= '2013-11-21'
AND sms_messages.sms_status='pending' AND
sms_messages.send_sms_toid = sms_recipients.smsuser_id
smsid(整数,自动递增)、sms_类型(文本)、sms_状态(枚举“待定”,已发送”),
sms_错误(测试)、sms_消息(文本)、sms_MP3文件(varchar 50),
短信发送(日期时间),短信发送(int 5)
我的表格条目如下(按照上面表格列的顺序)
31 | mp3 | pending | | | | helloworld.mp3 | 2013-11-20 16:16:00 | 7
30 | text | sent | hello test | 2013-11-18 13:12:00 | 8
29 |语音|发送|测试123 | 2013-11-18 10:05:00 | 18
我的问题如下
smsid (int, auto increment), sms_type (text), sms_status (enum 'pending',sent'),
sms_error (test), sms_message(text), sms_mp3file (varchar 50),
sms_sendon (datetime), send_sms_toid (int 5)
SELECT sms_messages.*, sms_recipients.cust_profid, sms_recipients.sms_cellnumber,
customer_smsnumbers.sms_number, customer_smsnumbers.sms_number
FROM sms_messages, sms_recipients, customer_smsnumbers
WHERE sms_messages.sms_type='mp3' AND sms_messages.sms_sendon <= '2013-11-21'
AND sms_messages.sms_status='pending' AND
sms_messages.send_sms_toid = sms_recipients.smsuser_id
选择sms\U消息。*、sms\U recipients.cust\u profid、sms\U recipients.sms\u cellnumber、,
客户号、短信号、客户号、短信号
来自短信、短信收件人、客户短信成员
在查询中的sms_messages.sms_type='mp3'和sms_messages.sms_sendon中,您遗漏了客户smsnumbers
表的加入
子句。类似于sms\u messages.send\u sms\u toid=sms\u recipients.smsuser\u id
您需要有一个连接子句,该子句可以将sms\u messages
连接到customer\u smsnumbers
表,或者将sms\u recipients
连接到customer\u smsnumbers
表
在没有join子句的情况下,结果中会包含其他(意外的)记录。+1但当他们指责MySQL没有显示行时,我真正喜欢的是什么