gpt4 book ai didi

MySQL:根据用户输入从多个表中提取并呈现信息

转载 作者:行者123 更新时间:2023-11-29 23:10:00 25 4
gpt4 key购买 nike

当谈到 SQL 编程时,我有点超出了我的深度,但是在寻找问题的解决方案后,我没有找到任何相关的答案,因此我的问题在这里:

使用 MySQL,我有一个名为 newsletter_subscriber 的表。该表仅包含电子邮件地址列表(subscriber_email),每行电子邮件地址都有一个唯一的 ID(subscriber_ID),每行 ID 加 1。

我想要完成的是能够输入“发件人”ID 和“收件人”ID(例如从 672 到 835),并且对于每个 ID 都有表 sales_flat_order_address 和 sales_flat_order_address 查询各自的电子邮件地址,以返回客户的名字 (firstname) 和姓氏 (lastname) 以及电话号码 (telephone)。

这三个表(newsletter_subscriber、表 sales_flat_order_address 和 sales_flat_order_address)唯一的共同点是电子邮件地址。如果在 sales_flat_order_address 和 sales_flat_order_address 中找到匹配项,则应放弃对该电子邮件地址的进一步搜索,以便我们最终不会得到同一电子邮件地址的多个结果(两个表可能包含相同的电子邮件地址,每个表甚至可能包含多次电子邮件地址,在所有情况下都会显示名字、姓氏和电话的完整信息)。

最终结果应该如下所示(我的评论如下):

1:  2:                      3:          4:          5:
672 email1@example.com Firstname1 Lastname1 Telephone1
673 email2@example.com Firstname2 Lastname2 Telephone2
674 email3@example.com Firstname3 Lastname3 Telephone3
675 email4@example.com Firstname4 Lastname4 Telephone4
676 email5@example.com Firstname5 Lastname5 Telephone5
.. .. .. .. ..
835 email174@example.com Firstname6 Lastname6 Telephone6

*1:第 1 列,显示来自表 newsletter_subscriber 中手动输入的subscriber_id 列的递增 ID

*2:第 2 列,显示表 newsletter_subscriber 中的相应字段Subscriber_email

*3:第 3 列,显示 sales_flat_order_address 或 sales_flat_order_address 表中的相应字段名字,与第 2 列中的相应电子邮件地址相对应

*4:第 4 列,显示 sales_flat_order_address 或 sales_flat_order_address 表中的相应字段姓氏,与第 2 列中的相应电子邮件地址相对应

*5:第 5 列,显示 sales_flat_order_address 或 sales_flat_order_address 表中的相应现场电话,与第 2 列中的相应电子邮件地址相对应

有人可以提供一个代码示例吗?

最佳答案

试试这个,它会起作用:

SELECT t1.`subscriber_email`, t2.`firstname`, t2.`lastname`, t2.`telephone` from `newsletter_subscriber` t1 JOIN `sales_flat_order_address` t2 on
t1.`subscriber_email` = t2.`email`

关于MySQL:根据用户输入从多个表中提取并呈现信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28128952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com