gpt4 book ai didi

mysql - 如何使用sql存储过程获取行号

转载 作者:行者123 更新时间:2023-11-29 01:51:49 25 4
gpt4 key购买 nike

我有两张 table 。一个是本地的,另一个是外国的。所以我想做的是在使用存储过程连接两个表后给出行号。首先,我想从两个表中获取相同数量的列,然后我想合并为一个表并给出行号。以下是我的查询。

set @row_number=0;select (@row_number:=@row_number + 1) as number, (select a.*from (select ID,title,last_name,first_namefrom local)aunion allselect b.*from(select ID,title ,last_name,first_namefrom foreign)b);

谁能告诉我它有什么问题吗?

最佳答案

SQL SERVER中使用ROW_NUMBER窗口函数

SELECT Row_number()
OVER(
ORDER BY (SELECT NULL))AS number,a.*
FROM (SELECT ID,
title,
last_name,
first_name
FROM local
UNION ALL
SELECT ID,
title,
last_name,
first_name
FROM FOREIGN) a

注意:(SELECT NULL) 替换为您希望按行号生成排序的列。现在行号生成是任意的

关于mysql - 如何使用sql存储过程获取行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39785309/

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