我试图获取随我的sql查询返回的序列号列。我需要将它放在SELECT语句中,因为我想将此查询嵌套在另一个查询中,然后将之前生成的列用于进一步的计算。
我到处都看过,找不到任何示例。
具有以下效果的东西:
SELECT *, ROW_NUMBER() as row_number from my_awesome_table;
这应该生成如下内容:
row_number some_column some_other_column ---------- ----------- ----------------- 1 bla bla bla bla bla 2 bla bla bla bla bla 3 bla bla bla bla bla 4 bla bla bla bla bla
请注意,some_column和some_other_column是my_awesome_table中实际存在的列,而row_number仅针对此查询即时生成。
谢谢!猪
您需要使用MySQL用户变量。让我们考虑一个变量t1。在初始化它0。并在每个选择值中将其递增。
t1
0
SET @t1=0; SELECT @t1 := @t1+1 as row_number, my_awesome_table.* from my_awesome_table
这将达到目的。