gpt4 book ai didi

sql - 我需要如何重写 SQL 更新语句子查询以仅选择单行?

转载 作者:行者123 更新时间:2023-12-04 21:18:27 25 4
gpt4 key购买 nike

我需要如何重写 SQL 更新语句子查询以仅选择单行?

我已经尝试过 TOP 1,但这只是将所有值更新为 TOP 1 选择值。

这是我所拥有的:

BEGIN TRAN
UPDATE DBO.TRACKINGPROD
SET LEV8 = (SELECT SUBSTRING(LEV2, 1,
(SELECT CHARINDEX('-', LEV2) - 1))
FROM DBO.TRACKINGPROD)
ROLLBACK TRAN

结果:

Msg 512, Level 16, State 1, Line 2
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

该声明已终止。

表中的示例:

Lev2 列 = A1011-000-XXXXX AHN - XXXXX 诉 XXXXX 兰乔Lev8 = 空白

我的最终目标是更新 Lev8,使其与 Lev2 中破折号左侧的所有内容位于同一行。

最佳答案

我认为你可以通过单个查询来完成:

UPDATE DBO.TRACKINGPROD
SET LEV8 = SUBSTRING(LEV2, 1, CHARINDEX('-', LEV2) - 1));

您还可以使用LEFT()代替:

UPDATE DBO.TRACKINGPROD
SET LEV8 = LEFT(LEV2, CHARINDEX('-', LEV2) - 1);

关于sql - 我需要如何重写 SQL 更新语句子查询以仅选择单行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53340315/

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