从基于一个不同字段的连接表中选择数据,但返回所有其他列

时间:2018-02-02 13:21:23

标签: mysql mysql-workbench

我查看过很多以前的问题,但似乎找不到符合我查询的问题?

我当前的网站将客户详细信息存储在数据库中的不同表中。

我已经设法根据Firstname和Lastname加入表格:

Select * 
FROM ps_customer
INNER JOIN ps_address
      ON ps_address.Firstname = ps_customer.Firstname AND   
         ps_address.Lastname = ps_customer.Lastname 

但是,结果包含相同客户的重复电子邮件地址。我想要做的是返回连接表中的所有列,但仅用于不同/唯一的电子邮件地址?有没有可以做到这一点的命令?

ps我对sql很新,所以对非技术语言道歉

我想在这张照片enter image description here

中做点什么

1 个答案:

答案 0 :(得分:1)

使用DISTINCT

SELECT DISTINCT
    pc.ID,
    pc.Firstname,
    pc.Lastname,
    pa.Address1,
    pa.Address2,
    pa.Zip,
    pc.email
FROM ps_customer pc
INNER JOIN ps_address pa
    ON pa.Firstname = pc.Firstname AND
       pa.Lastname = pc.Lastname;

我不确切地知道您要选择哪些列,但上述模式应该是一种方法。