1樓:匿名使用者
可用row_number來解決。
如student表:
姓名 年齡
張三 20
李四 15
王五 22
趙六 21
孫七 18
楊八 19
劉九 24
現在要按年齡從大到小取出前5條資料的話,可用如下語句:
select 姓名,年齡
from
(select 姓名,年齡,row_number() over (order by 年齡 desc) as rn from student) t
where rn<=5;
得到的結果是:
姓名 年齡
劉九 24
王五 22
趙六 21
張三 20
楊八 19
2樓:
若該字段值唯一:
update 表 set 字段=新值 where 字段 in (select top 10 字段 from 表);
sql中的update如何根據不同條件修改多條資料的同一列 10
3樓:娛樂小八卦啊
如果只需要更新乙個字段,mysql和oracle語法是一樣的,在 set 後面跟乙個子查詢即可。
現在需要同時更新內2個字段,最不容經過大腦思考的方法就是 「為每個 set 後面都跟乙個子查詢」,但是假如要 set 十個字段或者更多字段,很顯然,這樣在效能上是很不合適的方法。
同時更新多個欄位在mysql和oracle中的方法是不一樣,mysql需要連線表,oracle使用 set(...) 即可。
擴充套件資料
sql更新語句中update用法:
語法:update 表名稱 set 列名稱 = 新值 where 列名稱 = 某值
更新某一行中的乙個列
為 lastname 是 "wilson" 的人新增 firstname:
update person set firstname = 'fred' where lastname = 'wilson'
請注意 sql update 語句中的 where 子句!
where 子句規定哪條記錄或者哪些記錄需要更新。如果您省略了 where 子句,所有的記錄都將被更新!
4樓:匿名使用者
可以啊修改where條件
update abc set a=1 where id=1 or id=2
你給的例句有問題啊,表名abc,後面寫的是a.id
5樓:傲雪
update abc set abc.a=1 where a.id in (1,2),字元型別加''號
6樓:工業分析中
修改學生bai表中性別列,如果是du男,就修改zhi為1,如果是女就修改dao為0,其他情況為專2
請參照如下語屬句修改執行:
update student set *** = (case when ***='男' then 1 when ***='女' then 0 else 2 end) where 1=1
一條資料指定字段更新 sql語句怎麼寫?
7樓:匿名使用者
update 表名
抄 set 列名=更新的值 where 條件如 update table1 set name='jj' where id=1
如果要更新多列,只要update table1 set fristname='jj',lastname='tt' where id=1
8樓:匿名使用者
uedate 表名 set 列名=新值 where 條件(定位到行)!
一條sql update如何同時更新兩個欄位的值按不同條件
9樓:匿名使用者
能,但是你說的不清楚,寫個語句你看看,能否受到啟示。
update 表名 set 欄位1= case when 條件版1 then 1 else 0 end, 欄位2= case when 條件2 then 0 else 1 end
意思你理解了,權就會寫了,這裡的值我用1和0代替的,具體的看你的是啥了。
用case when 你去研究研究這個語法。呵呵。
sql 語句 以某乙個欄位為條件 修改某乙個欄位的值
10樓:匿名使用者
示例:表名: poetry ;字段:p_type; 條件:p_type='1001';
sql 語句: 「update poetry set p_type ='aaa' where p_type ='1001'」
11樓:浪子_回頭
最簡單的方法就是使用資料庫視覺化工具,直接在表中修改,如果沒有資料庫視覺化工具,就使用cmd命令修改。
cmd命令修改字段例子:
**名稱class,表頭name、id。
修改語句:把 高一三班 改為 高一五班updata class set name = '高一五班'
where name = '高一三班';
12樓:大野瘦子
update table set col2=case when col1 條件1 then 值1 when col1 條件2 then 值2;
或者分為幾句修改
update table set col2=值1 where col1 條件1
update table set col2=值2 where col1 條件2
sql修改字段屬性總結
1、修改表中字段型別 可以修改列的型別,是否為空)
alter table [表名] alter column [列名] 型別
2、向表中新增字段
alter table [表名] add [列名] 型別
3、刪除字段
alter table [表名] drop column [列名]
4、新增主鍵
alter table [表名] add constraint [ 約束名] primary key( [列名])
5、新增唯一約束
alter table [表名] add constraint [ 約束名] unique([列名])
6、新增表中某列的預設值
alter table [表名] add constraint [約束名] default(預設值) for [列名]
7、新增約束
alter table [表名] add constraint [約束名] check (內容)
8、新增外來鍵約束
alter table [表名] add constraint [約束名] foreign key(列名) referencese 另一表名(列名)
9、刪除約束
alter table [表名] add constraint [約束名]
10、重新命名表
exec sp_rename 『[原表名]』,』[新錶名]』
11、重新命名列名
exec sp_rename 『[表名].[列名]』,』[表名].[新列名]』
13樓:匿名使用者
update table_name set col_name1=***x where col_name2='***';
table_name表名,col_name1要修改的欄位名 col_name2做為條件的欄位名,***值。
14樓:
--並表更新
--表tableb,tablea; 欄位col01,col02,col03
update tableb
set colb = a.col01 + a.col02from tablea a
where tableb.col03 = 特定字串and tableb.col01 = a.col01 --並表的條件
15樓:匿名使用者
能把問題說明白些嗎?不知道你到底什麼意思,我的理解答案給你看看是不是你想要的:
1.修改表a中,***為女的salary(工資)增加500update a set salary=salary+500where ***='女'
16樓:匿名使用者
update table set 字段=要修改的值
where 字段=過濾條件
17樓:匿名使用者
update [表名] set [列1] = [值1],[列2] = [值2] where [列3] = [值3]
資料庫sql如何完全備份,資料庫SQL 如何完全備份
1 點選開始選單,開啟sql企業管理器。2 依次sqlserver根目錄,並開啟資料庫。3 選擇要備份的資料庫名,滑鼠右鍵所有任務 備份資料庫。4 這裡需要注意,如果之前有備份的話,一定要先刪除之前的備份記錄,不用擔心只是刪除記錄而不是刪除備份檔案。5 刪除記錄再點新增。6 選擇備份目的,就是要讓你...
資料庫備份恢復,SQL資料庫如何自動備份和恢復?
1 建立乙個新的資料庫 2 右擊資料庫 所有任務 還原資料庫 從裝置 選擇裝置 新增 瀏覽備份檔案 3 指定還原為資料庫名稱 注意 如果提示問題,可在選項卡片中勾選強制還原。1.在資料庫管理器中,右擊資料庫名,然後點所有任務,備份資料庫,輸入乙個想備份的名字並選擇乙個地方放置。2.把已經備份好的資料...
資料庫SQL查詢語句的編寫,SQL中多條件同時查詢語句怎麼寫?
select max id from 表 where num 100 查最大id select from 表 where id select max id from 表 where num 100 and num 100 查id最大並且num為100的那條資料 sql select 語句 selec...