gpt4 book ai didi

mysql - 在 MySQL 中使用 UNION 时区分输出

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

我正在使用 UNION 来获取 2 行的连接输出。 A和B,以下是代码。

"SELECT `ent_id` as `id`, `owner_id`, `category_id`, `ent_name` as `name`, `ent_details` as `details` FROM `A` WHERE  `category_id` = '$cat' 

UNION

SELECT `service_id` as `id`, `owner_id`, `category_id`, `service_name` as `name`, `service_details` as `details` FROM `B` WHERE `category_id` = '$cat'

查询工作得很好,但我现在想知道哪个输出来自表 A,哪个输出来自表 B。

有办法做到这一点吗?如果是这样怎么办?

感谢您的宝贵时间。 :)

最佳答案

为每个选择添加一个常量值:

select 'table a' as source_table, ... from A where ...
union all
select 'table b' as source_table, ... from B where ...

此外,union 消除了形成并集的两个集合之间的重复项,而 union all 则不能。如果没有重复项,您应该使用union all以获得更好的性能。

关于mysql - 在 MySQL 中使用 UNION 时区分输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35813814/

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