常用sql語句

2021-04-12 15:11:24 字數 3710 閱讀 6203

t_sql語句複製表的方法

我在sql server 2000中有現個資料庫datahr及demo,它們的結構是一樣,其它有乙個表名為:gbitem.現在我想將demo資料庫的表名:gbitem的全部內容複製到datahr資料庫的表名為:gbitem中。請問此t-sql語句應該怎麼寫? 謝謝高人指點!

如果目的表已經存在:

insert into datahr.dbo.gbitem

select * from demo.dbo.gbitem

如果目的表不存在:

select * into datahr.dbo.gbitem

from demo.dbo.gbitem

--備份資料庫ofsys

backup database ofsys to disk = 'e:/ofsys'

還原restore database test from disk = 'c:/test'

精妙sql語句

精妙sql語句

說明:複製表(只複製結構,源表名:a 新錶名:b) 

sql: select * into b from a where 1<>1

說明:拷貝表(拷貝資料,源表名:a 目標表名:b)

sql: insert into b(a, b, c) select d,e,f from b;

sql: select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b

說明:外連線查詢(表名1:a 表名2:b)

sql: select a.a, a.b, a.c, b.c, b.d, b.f from a left out join b on a.a = b.c

sql: select * from 日程安排 where datediff('minute',f開始時間,getdate())>5

說明:兩張關聯表,刪除主表中已經在副表中沒有的資訊

sql:

delete from info where not exists ( select * from infobz where info.infid=infobz.infid )

說明:--

sql:

select a.num, a.name, b.upd_date, b.prev_upd_date

from table1,

(select x.num, x.upd_date, y.upd_date prev_upd_date

from (select num, upd_date, inbound_qty, stock_onhand

from table2

where to_char(upd_date,'yyyy/mm') = to_char(sysdate, 'yyyy/mm')) x,

(select num, upd_date, stock_onhand

from table2

where to_char(upd_date,'yyyy/mm') =

to_char(to_date(to_char(sysdate, 'yyyy/mm') || '/01','yyyy/mm/dd') - 1, 'yyyy/mm') ) y,

where x.num = y.num (+)

and x.inbound_qty + nvl(y.stock_onhand,0) <> x.stock_onhand ) b

where a.num = b.num

說明:--

sql:

select * from studentinfo where not exists(select * from student where studentinfo.id=student.id) and 系名稱='"&strdepartmentname&"' and 專業名稱='"&strprofessionname&"' order by 性別,生源地,高考總成績

說明:

從資料庫中去一年的各單位**費統計(**費定額賀電化肥清單兩個表**)

sql:

select a.userper, a.tel, a.standfee, to_char(a.telfeedate, 'yyyy') as telyear,

sum(decode(to_char(a.telfeedate, 'mm'), '01', a.factration)) as jan,

sum(decode(to_char(a.telfeedate, 'mm'), '02', a.factration)) as fri,

sum(decode(to_char(a.telfeedate, 'mm'), '03', a.factration)) as mar,

sum(decode(to_char(a.telfeedate, 'mm'), '04', a.factration)) as apr,

sum(decode(to_char(a.telfeedate, 'mm'), '05', a.factration)) as may,

sum(decode(to_char(a.telfeedate, 'mm'), '06', a.factration)) as jue,

sum(decode(to_char(a.telfeedate, 'mm'), '07', a.factration)) as jul,

sum(decode(to_char(a.telfeedate, 'mm'), '08', a.factration)) as agu,

sum(decode(to_char(a.telfeedate, 'mm'), '09', a.factration)) as sep,

sum(decode(to_char(a.telfeedate, 'mm'), '10', a.factration)) as oct,

sum(decode(to_char(a.telfeedate, 'mm'), '11', a.factration)) as nov,

sum(decode(to_char(a.telfeedate, 'mm'), '12', a.factration)) as dec

from (select a.userper, a.tel, a.standfee, b.telfeedate, b.factration

from telfeestand a, telfee b

where a.tel = b.telfax) a

group by a.userper, a.tel, a.standfee, to_char(a.telfeedate, 'yyyy')

說明:四表聯查問題:

sql: select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....

說明:得到表中最小的未使用的id號

sql:

select (case when exists(select * from handle b where b.handleid = 1) then min(handleid) + 1 else 1 end) as handleid

from handle

where not handleid in (select a.handleid - 1 from handle

sql常用sql語句

1 查詢某個庫中所有的表名字 select name from sysobjects where xtype u and name dtproperties order by name 2 得到資料庫中所有使用者檢視 select name from sysobjects where xtype v...

常用SQL語句

查詢 sp who 中的結果值。因為儲存過程不能查詢,先轉為臨時表再查詢。declare tb table spid varchar 100 ecid varchar 100 status varchar 100 loginame varchar 100 hostname varchar 100 b...

常用SQL語句

select sysdate from dual desc tablea insert into table name values 1,aaaa 34 update table name set aa aa where x delete from table name where x alter ...