在sql中合并两个没有公共列的表

时间:2014-12-03 09:26:28

标签: sql merge

我有两个表A和B.表A包含字段'number'。表B包含'number_start'和'number_end'。 我想合并这两个表,以便最终表包含数字在number_start和number_end之间的表的详细信息。

我想在redshift / sql中实现这一点。如果有人有任何线索,请告诉我。

4 个答案:

答案 0 :(得分:2)

执行此加入操作

Select a.Number,b.EndNumber,b.StartNumber
from A a join B b
on  a.Number >= b.StartNumber and a.Number <= b.EndNumber

答案 1 :(得分:1)

使用join语句。试试这个。

select t1.numbers from t1,t2 where t1.numbers>t2.min and t1.numbers<t2.max;

答案 2 :(得分:1)

SELECT t1.`number`,t2.`end_number`, t2.`start_number` FROM table1 t1, `table2` t2
WHERE `number` >= start_number
AND number <=end_number
你想要这样的东西吗? Please check this

答案 3 :(得分:0)

如果两个表彼此不相关,则可以使用此查询

select CONVERT(varchar, A.number_start) + CONVERT(varchar,B.number) + Convert(varchar,A.number_end)     from A cross join B

或者如果此表具有外键,则可以在此查询中使用内部联接