gpt4 book ai didi

mysql - sql交替列数据

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

我正在 SQL 中构建一个查询,在其中收集有关销售交易的信息,我从中提取的两个表是 CLIENT_NOTES。一个客户可以拥有任意数量的注释,但反之则不然。

目前我的查询如下:

SELECT client.name, client.email,..., client_notes.summary AS SUMMARY
FROM CLIENT client
LEFT JOIN CLIENT_NOTES client_notes ON client.CLIENT_ID = client_notes.CLIENT_ID

我还想为客户引入 REFERENCE_NOTES.summary。同样,一个客户可以拥有任意数量的引用注释,但反之则不然。但我想以这样的方式提取数据,即所有 client_notes.summary 条目都显示特定客户端,然后references_notes.summary 条目显示同一客户端,直到移动到下一个客户端,其中两个摘要都是显示在名为摘要的同一列下。

这在sql中可能吗?

最佳答案

您可以使用 UNION ALL 来完成此操作。基本上两个 select 语句混在一起了。第一个获取 client_notes,第二个获取 reference_notes。关于 UNION 需要注意的一些事情是列的数量和顺序必须相同。数据类型也必须兼容。

--Get client_notes
SELECT client.name, client.email,..., client_notes.summary AS SUMMARY
FROM CLIENT client
LEFT JOIN CLIENT_NOTES client_notes ON client.CLIENT_ID = client_notes.CLIENT_ID
UNION ALL
--Get reference_notes
SELECT client.name, client.email,..., reference_notes.summary AS SUMMARY
FROM CLIENT client
LEFT JOIN REFERENCE_NOTES reference_notes ON client.CLIENT_ID = reference_notes.CLIENT_ID
ORDER BY client.name

关于mysql - sql交替列数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24438500/

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