複製資料結構
Select * into NewTable From OldTable Where 1=0
複製TABLE資料結構和資料
Select * into NewTable From OldTable
Select * into NewTable From OldTable Where 1=0
Select * into NewTable From OldTable
//狀況1 select email into #tempMail from member with(nolock) where ..some conditions SELECT * FROM #tempMail WHERE email LIKE 'A%' ORDER BY email //狀況2 //暫存表的建法 是在table名稱前加上 # create table #tmp_table (return_id nvarchar(30) , pid nvarchar(20)) //建完後insert資料 insert into #tmp_table(return_id ,pid) values('XXXXXX','YYYY')
// 這裡是用 ,pid, 當作排序依據 charindex(exp1,exp2)會回傳exp1所在的位置,起始值是1 select pid,name from temp where pid in ('p004','p008','p435','p123','p056') order by charindex(',' + cast(pid as varchar(10) + ',' , ',p004','p008','p435','p123','p056,' ))
//如果排序的對象有空白(不管空白是在字串前或後) 可以用 rtrim() 來Trim掉空白 select rtrim(pid),name from temp where pid in ('p004','p008','p435','p123','p056') order by charindex(',' + rtrim(cast(pid as varchar(10)) + ',' , ',p004','p008','p435','p123','p056,' ))
//EX1 SELECT CONCAT(Country , + ',' + City , + ',' + Zip) as address FROM Table //Ex2 SELECT Country ',' + City + ',' + Zip as address FROM Table
DELETE FROM [Table] WHERE ( SELECT ID FROM [Table] WHERE DATEDIFF(minute,CreateTime,getdate()) > 10 ) --順便塞一下 用SQL 算出這個月的最後一天 SELECT DATEADD(MONTH, DATEDIFF(MONTH, -1, GETDATE() ), -1)
/* SCOPE_IDENTITY() 會返回最後一個識別值*/ INSERT INTO TableName (Column1,Value1,CreateDate) VALUES ('New',1,GETDATE()) SELECT ID FROM TableName WHERE ID = SCOPE_IDENTITY();