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

标签 mysql mysql-workbench

我已经浏览了许多以前的问题,但似乎找不到符合我的查询的问题?

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

我已成功将基于名字和姓氏的表与:

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 这样的事情

最佳答案

使用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;

我不知道您到底要选择哪些列,但上面的模式应该是这里的一种方法。

关于mysql - 根据一个不同字段从连接表中选择数据,但返回所有其他列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48583590/

相关文章:

mysql - Mysql中如何修改外键列名以及如何删除外键

MySQL MyISAM - 不加锁进行插入

sql - 检索单个值及其总和?

mysql - 改进我的数据库设计以实现 future 的可扩展性

mysql - 为什么 MySQL Workbench 在 n :m relation? 上创建两个索引

mysql - 触发问题请指教

mysql - 选择日期小于指定日期的每组最新行

MySQL 行匹配 : 1 changed: 0 warnings: 0 for date column

mysql - 在 MySQL WorkBench 中从 SQL 脚本生成图表

mysql - 通过 ssh 连接时 SQl 工作台崩溃