我不能使用Union,因为它不是我想要的结果,也不能使用join,因为我没有任何公共列。我尝试过许多不同的SQL查询结构,但是没有任何东西能按我的要求工作。
我需要帮助来实现我认为是一个非常简单的SQL查询。我现在要做的是
select a, b
from (select top 4 a from element_type order by c) as Y,
(SELECT * FROM (VALUES (NULL), (1), (2), (3)) AS X(b)) as Z第一个是表的一部分,第二个是手工创建的select,它给出了如下结果:
select a; --Give--> a,b,c,d (1 column)
select b; --Give--> 1,2,3,4 (1 column)我需要一个基于第一个给我的查询(第2列):
a,1
b,2
c,3
d,4我该怎么做?工会,加入还是别的什么?或者我做不到。
我现在所能得到的就是:
a,1
a,2
a,3
a,4
b,1
b,2
...发布于 2017-08-03 13:42:46
尝试使用row_number。我创造了一些能帮你的东西。见下文:
declare @tableChar table(letter varchar)
insert into @tableChar(letter)
select 'a';
insert into @tableChar(letter)
select 'b';
insert into @tableChar(letter)
select 'c';
insert into @tableChar(letter)
select 'd';
select letter,ROW_NUMBER() over(order by letter ) from @tableCharhttps://stackoverflow.com/questions/45484772
复制相似问题