Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Update语句未使用别名编译_Sql_Sql Server_Tsql_Sql Server 2012 - Fatal编程技术网

Sql Update语句未使用别名编译

Sql Update语句未使用别名编译,sql,sql-server,tsql,sql-server-2012,Sql,Sql Server,Tsql,Sql Server 2012,这是我未编译的update语句: Update Documents d Set DocumentDate = 1, LastStatusChangedDateTime = ( Select Top 1 DATEADD(ss,1,StatusChangedDateTime) From [dbo].[DocumentStatusesHistory] dsh

这是我未编译的update语句:

Update Documents d
        Set 
            DocumentDate = 1,
            LastStatusChangedDateTime = (
                Select Top 1 DATEADD(ss,1,StatusChangedDateTime)
                    From [dbo].[DocumentStatusesHistory] dsh
                        Where dsh.DocumentID = d.DocumentID
            )
            Where DocumentID In
            (
                Select Data From dbo.Split(@DocumentIDs,',')
            )
我无法使用d作为别名。我怎样才能解决这个问题?

这个怎么样

    Update Documents 
        Set 
            DocumentDate = 1,
            LastStatusChangedDateTime = (
                Select Top 1 DATEADD(ss,1,StatusChangedDateTime)
                    From [dbo].[DocumentStatusesHistory] dsh
                        Where dsh.DocumentID = d.DocumentID
            )
        From Documents d
            Where DocumentID In
            (
                Select Data From dbo.Split(@DocumentIDs,',')
            )
添加自第条:

试试这个:

UPDATE  d
SET     d.DocumentDate = 1 ,
        d.LastStatusChangedDateTime = ( SELECT TOP 1
                                            DATEADD(ss, 1,
                                                    StatusChangedDateTime)
                                        FROM    [dbo].[DocumentStatusesHistory] dsh
                                        WHERE   dsh.DocumentID = d.DocumentID
                                  )
来自文件d 其中d.DocumentID在选择数据中 来自dbo。Split@DocumentIDs",

UPDATE  d
SET     d.DocumentDate = 1 ,
        d.LastStatusChangedDateTime = ( SELECT TOP 1
                                            DATEADD(ss, 1,
                                                    StatusChangedDateTime)
                                        FROM    [dbo].[DocumentStatusesHistory] dsh
                                        WHERE   dsh.DocumentID = d.DocumentID
                                  )