我有两个桌子
表1和表2
我想从表1中获取所有数据,并从表2中获取一列的值。
两个表的唯一详细信息是手机号码。
所以我尝试了这个:
SELECT d.*, a.paymentmode FROM table1 d JOIN table2 a ON d.user = a.mobile WHERE a.mobile = '+911234567890'
我得到双重结果。
赞:有关上述手机号码。
Order1
Order1
Order2
Order2
Order3
Order3
Order4
Order4
这是什么问题?如何仅显示Order1,Order2,Order3,Order4,而不显示double?
答案 0 :(得分:0)
假设表1用户列是一个手机号码,那么您所缺少的就是JOIN的类型
联接的类型及其逻辑可以在here
中找到顺便说一句-我要做的另一件事是从手机号码字段中删除所有无数字键('+','-'等),它可以保存可能的JOI错误等。
答案 1 :(得分:-1)
我认为您需要使用分组依据。
SELECT t1.*, t2.column_name FROM table1 AS t1 JOIN table2 AS t2 ON t1.mobile = t2.mobile WHERE t2.mobile = '+911234567890' GROUP BY t1.mobile