gpt4 book ai didi

sql - 选择刚刚插入的行

转载 作者:行者123 更新时间:2023-12-04 02:50:48 25 4
gpt4 key购买 nike

如何检索刚刚插入的行?

INSERT INTO LETTRE_VOIT
select rsVoit.NOID, NO_ORDRE, rsOrdre.CODE_DEST, rsOrdre.MODAL_MODE, rsOrdre.MODAL_PORT,
CASE rsOrdre.MODAL_PORT
WHEN 'false' THEN 'D'
ELSE 'P'
END,
rsOrdre.LIVRS_EXPRS,
CASE rsOrdre.LIVRS_EXPRS
WHEN 'false' THEN 'L'
ELSE 'E'
END,
rsOrdre.ENLEV_UNITE, LIBELLE, NBR_COLIS,POID,ENLEV_CREMB,ENLEV_DECL
from ORDRE rsOrdre
inner join
(
select CODE_DEST,MODAL_MODE, MODAL_PORT, LIVRS_EXPRS,ENLEV_UNITE, ROW_NUMBER() over (order by CODE_DEST) as NOID
from ORDRE
group by CODE_DEST,MODAL_MODE,MODAL_PORT,LIVRS_EXPRS,ENLEV_UNITE
) rsVoit on rsVoit.CODE_DEST = rsOrdre.CODE_DEST and rsVoit.MODAL_MODE = rsOrdre.MODAL_MODE
and rsVoit.MODAL_PORT = rsOrdre.MODAL_PORT and rsVoit.LIVRS_EXPRS = rsOrdre.LIVRS_EXPRS
and rsVoit.ENLEV_UNITE = rsOrdre.ENLEV_UNITE

LEFT JOIN T_UNITE ON rsOrdre.ENLEV_UNITE = T_UNITE.NOID
WHERE (STATUT_ORDRE = 3) AND IS_PRINT = 'false' AND (TRANSPORTEUR IN (SELECT ParsedString From dbo.ParseStringList(@Trans)))
order by rsVoit.NOID, NO_ORDRE

SELECT * FROM LETTRE_VOIT WHERE ???

例如:

我插入了 2,它返回 2

然后我插入了 3,我想返回 3 而不是 5 行。

提前致谢。

史蒂夫

PS:我可能需要使用存储过程吗?

最佳答案

我不是 100% 确定你到底想要什么......但 SQL Server 有一个 OUTPUT可以从 INSERT 输出内容的子句和 UPDATEDELETE声明:

INSERT INTO dbo.YourTable(col1, col2, ..., colN)
OUTPUT Inserted.Col1, Inserted.IDCol, Inserted.Col17
VALUES(val1, val2, ...., valN)

在这里,您正在为 IDCol 插入值和插入的值。 (例如 INT IDENTITY 列), Col1Col17 .

如果在 Mgmt Studio 中将结果返回到您的网格就足够了 - 然后使用 OUTPUT条款!阅读更多 about the OUTPUT clause on Books Online

关于sql - 选择刚刚插入的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8342425/

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