gpt4 book ai didi

mysql - 如何从 2 个表中选择行,其中每个表中的 1 列可以通过共同目的合并?

转载 作者:行者123 更新时间:2023-12-01 00:54:35 29 4
gpt4 key购买 nike

我有 2 个表,其中包含相似但不同的数据。两个表都有自己的插入时间戳列。

Table A                      Table B
+------------+----------+ +------------+----------+
| a_created | a_data | | b_created | b_data |
+------------+----------+ +------------+----------+
| 2012-09-01 | A | | 2012-09-03 | C |
| 2012-09-05 | B | | 2012-09-04 | D |
+------------+----------+ +------------+----------+

我想从这些表中获取所有数据,并通过合并的日期列按两个创建日期排序。 IE。我想要以下结果

+------------+----------+----------+
| x_created | a_data | b_data |
+------------+----------+----------+
| 2012-09-01 | A | NULL |
| 2012-09-03 | NULL | C |
| 2012-09-04 | NULL | D |
| 2012-09-05 | B | NULL |
+------------+----------+----------+

这甚至可以在不改变架构的情况下实现吗?如果是,怎么办?

最佳答案

select a_created as x_created,a_data,'null' as b_data from table_a
union all
select b_created as x_created,'null' as a_data,b_data from table_b
order by x_created

sqlfiddle

我使用了带引号的“null”,因为当您想添加一个字符串时它会很方便,但是如果您想要真正的 NULL 值,请按照 Ike Walker 的建议去做。

关于mysql - 如何从 2 个表中选择行,其中每个表中的 1 列可以通过共同目的合并?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12306801/

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