麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數(shù)據(jù)庫 > SQL Server > 正文

SQL點(diǎn)滴13—編輯數(shù)據(jù)

2019-11-03 08:33:06
字體:
供稿:網(wǎng)友

數(shù)據(jù)庫中的數(shù)據(jù)編輯是我們遇到的最頻繁的工作,這一個隨筆中我來總結(jié)一下最常用的數(shù)據(jù)編輯。

  

select into

經(jīng)常遇到一種情況是,我們希望創(chuàng)建一個新表,表中的數(shù)據(jù)來源于原有的一個表;原有一個表,但是這個表中的數(shù)據(jù)已經(jīng)很混亂,我們希望把這些數(shù)據(jù)備份出來,然后把原有的表中的數(shù)據(jù)清除,重新導(dǎo)入;在這些情況下我們可以使用select into語句。

如果當(dāng)前用戶擁有建表權(quán)限,在select語句使用關(guān)鍵字into可以在數(shù)據(jù)庫中創(chuàng)建新的 表。這個語句只需要把into new_table_name加到選擇出的列名之后,from關(guān)鍵字之前,當(dāng)然數(shù)據(jù)可以來源于一個或多個表中。需要說明的是在新表中只包含select字句中查詢的到的數(shù)據(jù),沒有任何鍵,約束,關(guān)系。下面實(shí)例:

select top(10) *
into new_intervalwaitssample
from IntervalWaitsSample
select * from new_intervalwaitssample

這個語句就將IntervalWaitsSample表中的前10行數(shù)據(jù)放在一個新建的表new_intervalwaitssample中。

   

insert into select

現(xiàn)在已經(jīng)有這個新表了,如果我們想再從原表IntervalWaitsSample中選擇一些數(shù)據(jù)插入到這個新表中呢,這時候就需要使用insert into select語句了,下面實(shí)例:

insert into new_intervalwaitssample
select * from IntervalWaitsSample where wait_type='ASSEMBLY_LOAD'

這個語句就將原表IntervalWaitsSample中的所有wait_type='ASSEMBLY_LOAD'的數(shù)據(jù)插入到新表中了。

  

insert into select union

現(xiàn)在如果我們有一些已知的數(shù)據(jù)想把這些數(shù)據(jù)一次性寫入到目標(biāo)表里面,應(yīng)該怎么辦呢,這時候union語句就很有用了,可以使用insert into select union語句,注意這個語句和insert into select很相似,差別就在于后面的select語句使用了union把多個select連接起來。

insert into select value11 , value12 , value13

union select value21 , value22 , value23

union select value31 , value32 , value33

… …

下面是實(shí)例:

insert into new_intervalwaitssample
select 'ASYNC_NETWORK_IO','2011-05-09 16:50:00.973','0.00' union
select 'ASYNC_NETWORK_IO','2011-05-09 17:00:00.020','0.00' union
select 'ASYNC_NETWORK_IO','2011-05-09 17:15:00.123','0.00' union
select 'ASYNC_NETWORK_IO','2011-05-09 17:25:00.190','0.00'

  

從表中“剪切”數(shù)據(jù)

還有一種情況,假設(shè)我們想從一個表中的數(shù)據(jù)刪除幾條數(shù)據(jù),然后把這些刪除的數(shù)據(jù)放到另外一個表中。這個動作就像使用剪切,粘貼一樣。不過這種情況要注意,他只能從用戶表中剪切數(shù)據(jù),不能從視圖中剪切數(shù)據(jù)。它的語法如下

Delete sourcetable
output deleted.value1,deleted.value2,deleted.value3
into targettable
from targettable where … …

下面是實(shí)例

delete WaitStats
output
deleted.dt,
deleted.wait_type,
deleted.waiting_tasks_count,
deleted.wait_time_ms,
deleted.max_wait_time_ms,
deleted.signal_wait_time_ms
into new_waitestats
where WaitStats.wait_type='ABR'

要注意的是這里有一個很少見的關(guān)鍵字deleted,它是當(dāng)前要刪除的表的別名,這個有點(diǎn)像類中的this關(guān)鍵字。

  

可見即可得的編輯

如果我們是應(yīng)用程序開發(fā),我相信大多數(shù)人還是更愿意使用SQL Server Management Studio中的圖像化界面來操作數(shù)據(jù),畢竟提供了這么多強(qiáng)大的功能,為什么不用呢。記得我曾經(jīng)提到過Oracle中可以直接修改sql語句選擇得到的數(shù)據(jù),當(dāng)時質(zhì)問Microsoft SQL Server為何沒有提供這樣強(qiáng)大的功能。呵呵,今天發(fā)現(xiàn)SQL Server還是提供了這樣的功能。不過這種修改只能是單獨(dú)一個表,如果在這個查詢語句中有內(nèi)連接之類的估計就不行了。廢話不說,上圖:

  1. 點(diǎn)擊要修改的表右擊選擇Edit top 200 rows
  2. 當(dāng)打開編輯界面的時候,SQL server上面會多出一個標(biāo)簽 ,鼠標(biāo)滑到這個標(biāo)簽上,再滑到Panel上,再滑到SQL上,點(diǎn)擊SQL,或者在編輯界面右擊也能看到。如圖1

    圖1
    這時候在上面的文字區(qū)就可以編寫自己想要修改的數(shù)據(jù)的查詢語句如下列:
    SELECT TOP (1000) dt, wait_type, waiting_tasks_count, wait_time_ms, max_wait_time_ms, signal_wait_time_ms
    FROM new_waitestats
    WHERE (wait_type = 'ABR')
  3. 這里我們想要修改wait_type=’ABR’的數(shù)據(jù),點(diǎn)擊查詢按鈕 ,在下面的表格內(nèi)就可以看到所有符合條件的數(shù)據(jù),這時候就可以修改這些數(shù)據(jù)了,注意改好之后按回車鍵才會寫到數(shù)據(jù)庫里面。這樣做是不是很偷懶呢呵呵,不用寫update語句,直接在里面修改。

使用編輯器復(fù)制粘貼數(shù)據(jù)

 還有一種情況可以使用編輯器代替上面的insert into select語句, 如果兩個表的字段完全一樣,我們從一個表中查詢得到數(shù)據(jù),然后復(fù)制到另外一個表中。

  1. 首先點(diǎn)擊數(shù)據(jù)行的開頭,選中整行,然后點(diǎn)擊copy如圖2
  2. 然后右擊想要插入數(shù)據(jù)的第二個表,鼠標(biāo)拖動滾動條到最后,直到顯示一行全部都是空值的一行,然后右擊paste,按回車鍵,這樣一條數(shù)據(jù)就插入進(jìn)去了。如圖3

這些都是在平時工作中見到的,覺得很有意思在這里記錄下來。這些雕蟲小技對于數(shù)據(jù)庫技術(shù)大牛來時不值得一提,還望大牛們看到了不要笑我班門弄斧啊。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 精品黑人一区二区三区国语馆 | 国产午夜精品理论片a级探花 | 久久久www成人免费精品 | 久久99精品久久久久久小说 | 日韩视频一区二区 | 免费1级做55爰片l在线观看 | 九九热九九爱 | 精品亚洲一区二区三区 | 水多视频在线观看 | 免费观看视频91 | 播色网| 久久久精品视频国产 | 香蕉成人在线视频 | 一级国产精品一级国产精品片 | 欧美韩国一区 | 舌头伸进添的我好爽高潮网站 | 九九热在线视频观看 | 日韩视频www| 国产视频在线免费观看 | 欧美精品一区二区视频 | 黄色一级片免费观看 | 老a影视网站在线观看免费 国产精品久久久久久久久久尿 | 亚洲精品午夜国产va久久成人 | 久久精品亚洲一区二区三区观看模式 | 毛片118极品美女写真 | 综合国产一区 | 毛片免费视频播放 | 黄污免费网站 | 中文字幕在线观看www | av在线免费观看播放 | 亚洲第一色婷婷 | 久久国产亚洲精品 | 欧美一级黄色录像片 | 亚洲一区二区免费 | av大全在线免费观看 | 午夜视频在线免费观看 | 毛片视| 在线播放免费av | 国产精品视频一区二区三区四区国 | 亚洲小视频在线观看,com | 96视频在线免费观看 |