相关疑难解决方法(0)

使用连接的SQL更新查询

我必须更新一个字段,其值由3个表的连接返回.

例:

select
    im.itemid
    ,im.sku as iSku
    ,gm.SKU as GSKU
    ,mm.ManufacturerId as ManuId
    ,mm.ManufacturerName
    ,im.mf_item_number
    ,mm.ManufacturerID
from 
    item_master im, group_master gm, Manufacturer_Master mm 
where
    im.mf_item_number like 'STA%'
    and im.sku=gm.sku
    and gm.ManufacturerID = mm.ManufacturerID
    and gm.manufacturerID=34
Run Code Online (Sandbox Code Playgroud)

我想更新mf_item_number表的字段值item_master与在上述条件中连接的其他值.

我怎样才能在MS SQL Server中执行此操作?

sql t-sql sql-server sql-server-2005 sql-update

630
推荐指数
7
解决办法
86万
查看次数

SQL Server用于处理多行插入的触发器

我正在维护一些代码,这些代码在表上有一个触发器来增加列.然后,该列由第三方应用程序A使用.让我们说这个表叫做test,有两列num1num2.触发器在测试中num1的每个插入上运行.以下是触发器:

USE [db1]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[TEST_MYTRIG] ON [dbo].[test]
FOR INSERT AS
begin
SET NOCOUNT ON
DECLARE @PROC_NEWNUM1 VARCHAR (10)
DECLARE @NEWNUM2 numeric(20)

SELECT @PROC_NEWNUM1 = num1 FROM INSERTED
select @NEWNUM2 = MAX(num2) from TEST
if @NEWNUM2 is null
Begin
set  @NEWNUM2  = 0
end
set @NEWNUM2 = @NEWNUM2 + 1
UPDATE TEST SET num2 = @NEWNUM2 WHERE num1 = …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server

10
推荐指数
1
解决办法
5万
查看次数

标签 统计

sql-server ×2

t-sql ×2

sql ×1

sql-server-2005 ×1

sql-update ×1