有時候我們在資料庫新增資料庫的時候,將某個列的字段放錯在在另外乙個字段。有時候想要不一列一列的加算了。但是當資料多的時候,想想自己浪費那麼多時間沒必要。想了乙個一勞永逸的辦法:
首先要兩列對換,那我們就必須要有第三列來進行臨時儲存。我理解如下:
int a; //列a
int b; //列b
int temp; //臨時列
//對換列
temp=a;
a=b;
b=temp;
這樣的原理應該不難,很容易理解的。
具體的方法如下:
(1):
update tblprocesswordfile(表)
set remark=b.name
from tblprocesswordfile(同一張表) as b
where name not like '%.doc' //條件是查詢該字段內的以不是以.doc結尾的
執行以上方法目的是將 b.name的值 即上面的 temp=a;方法一樣
(2):
以下在執行 a=b; b=temp方法
update tblprocesswordfile
set name=b.description,description=b.remark
from tblprocesswordfile as b
where name not like '%.doc'
注意: 先執行(1) 再執行(2)
remark可以隨便定義,執行後可以將該字段刪除即可!
SQL列的組合
前幾天對單位資料庫某錶中的兩列進行組合時,才接觸到幾個有用的字元函式。現記錄如下 col1 col2 a001 68 a001 69 a001 101 需要組合成a001 0068的樣式,應使用如下函式 select str col1,4 replace str col2,4 0 from tabn...
sql裡的多行多列轉一行多列小技巧
恢復內容開始 今天下午接受了乙個緊急小任務,是將一組比賽記錄統計出來,將象棋遊戲玩家的兩條記錄在一行裡面顯示,進資料庫看之後是首先想到的是行轉列,但是一開始就覺得不對,後來寫到一半確實不對,後來上網查詢了半天多行多列轉一行多列,發現又要寫演算法又要寫函式,看了實在頭疼,不想這麼麻煩。於是自己突然間靈...
SQL 列轉行的實現
列轉行,逗號拼接指定列的值 sql server中寫法 select stuff select field1 from tablea for xml path 1,1,oracle中寫法 方法一 wmsys.wm concat select wmsys.wm concat field1 from t...