SQL从组合表中选择

时间:2017-10-12 12:58:07

标签: mysql

有些具有相同前缀的表具有相同的主键

例如

my_table_1                             my_table_2 

name  data_0  data_1  ...  data_9      name  data_10  data_11  ...  data_19
jack  1.0     2.0     ...  1.5         jack  7.0      3.0      ...  2.5
amy   0.7     5.01    ...  1.7         amy   0.77     5.011    ...  1.97
.                                      .
.                                      .
.                                      .

但我无法使用 SELECT * FROM my_table_1, my_table_2 WHERE data_0 >= 1 AND data_11 > 3;

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

不知道示例中的数据的一个选项是使用UNION

SELECT * FROM my_table_1 WHERE (table_1 filter here)
UNION
SELECT * FROM my_table_2 WHERE (table_2 filter here)

唯一的事情是列必须被命名或别名相同。

答案 1 :(得分:1)

你可以使用JOIN,你说两个PK都可以使用它。

SELECT * FROM my_table_1 JOIN my_table_2 ON my_table_1.PK = my_table_2.PK

更多信息:SpanRegexQuery