l--*_*''' 2 sql sql-server sql-server-2008
我想这样做:
DECLARE @TmpTable TABLE = select * from someTable where someTable.Column1='BLAH'
Run Code Online (Sandbox Code Playgroud)
我需要@TmpTable成为一个子集,someTable我不想隐含地声明一个带有字段的结构@TmpTable,而我希望它是从someTable动态创建的.
这可能吗?
非常感谢你的帮助和指导!
我已经采取了建议来尝试临时表.但是,我收到错误:
The table #SubSet does not exist in the database
Run Code Online (Sandbox Code Playgroud)
这是代码:
DECLARE @StartDT DATE
DECLARE @MinDOS DATE
SELECT @MinDOS = MIN(dos) FROM accn_demographics
SELECT @StartDT =
CAST(CAST(datepart(YYYY,@MinDOS) AS varchar) + '-' + CAST(datepart(mm,@MinDOS) AS varchar) + '-' + CAST('01' AS varchar) AS DATETIME)
DECLARE @FileLocation VARCHAR(50)
DROP TABLE #SubSet
WHILE @StartDT < '20110901'
BEGIN
SELECT *
INTO #SubSet
FROM ViewAccountDetail
WHERE datepart(yyyy,ViewAccountDetail.DOS) = datepart(yyyy,@StartDT)
AND datepart(mm,ViewAccountDetail.DOS) = datepart(mm,@StartDT)
SET @FileLocation='C:\test\'+'ViewAccountDetail'+cast(@StartDT as varchar)+'.csv'
EXEC BCP_Text_File #SubSet, @FileLocation
SET @StartDT = DATEADD(MONTH,1,@StartDT)
DROP TABLE #SubSet
END
Run Code Online (Sandbox Code Playgroud)
select *
into #temptable
from someTable
where someTable.Column1='BLAH'
Run Code Online (Sandbox Code Playgroud)
只需将"@"更改为"#";)您也可以使用CTE.链接
| 归档时间: |
|
| 查看次数: |
3570 次 |
| 最近记录: |