1. sql語句修改
加入一張表裡有多條數據比較多個人的比分勝負。我們通過查詢名稱,然後將分數行作為對比欄位,付給我們新做的欄位這樣行就能成列了
select
欄位名1,max(case
fruit
when
'apple'
then
amount
else
0
end)
as
[勝利],
max(case
fruit
when
'pear'
then
amount
else
0
end)
as[失敗]
from
表明
group
by
class
2. sql update 語句
按你這個腳本直接改:
create
trigger
update_student
on
student
for
update
as
begin
declare
@班級
int
select
@班級=班級
from
inserted
update
class
set
人數
=
人數
+
@@rowcount
where
班級=@班級
select
@班級=班級
from
deleted
update
class
set
人數
=
人數
-
@@rowcount
where
班級=@班級
end
inserted是剛剛增加的整行,deleted是剛剛刪除的整行數據
沒有updated,update的過程就是先delete,再insert,所以用inserted和deleted能表達update的過程了
另外你這個觸發器只能對更新結果是1個班級的有效,如果是多個班級,在select
@班級=班級
from
inserted這句上會報錯
最好的辦法還是
create
trigger
update_student
on
student
for
update
as
begin
update
class
set
人數
=
人數
+
人數_add
from
(select
班級,count(1)
as
人數_add
from
inserted
group
by
班級)
b
where
class.班級=b.班級
update
class
set
人數
=
人數
-
人數_min
from
(select
班級,count(1)
as
人數_min
from
deleted
group
by
班級)
b
where
class.班級=b.班級
end
3. SQL語句,update
UPDATE 語句用於更新表中已存在的記錄。結構化查詢語言(Structured Query Language)簡稱SQL,結構化查詢語言是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。
見語句
更新:update table1 set field1=value1 where 范圍
查找:select * from table1 where field1 like 』%value1%』 (所有包含『value1』這個模式的字元串)
排序:select * from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1[separator]
4. sql update語句
update
SEOrder
set
FCOMHFreeItem2
=
t_Item.FName
from
SEOrder,t_Organization,t_Item
where
SEOrder.FCustID
=
t_Organization.FItemID
and
t_Organization.F_122
=
t_Item.FItemID
and
SEOrder.FCOMHFreeItem2
is
null
;
LZ可以參考上面語句的寫法(sybase,sql
server均支持,oracle不支持update時使用from,如果沒記錯的話)。
在更新時,要注意表間關系是否是一對一關系,否則可能會有問題(如果是一對多關系,sybase不會有問題,sybase是用一對多結果集中的第一條記錄的值來更新的,sql
server未測試,應該也可以,oracle應該是不可以的)。
PS:上面的語法中,from中的
SEOrder
也可以省略,因為update的就是這個表。
5. 修改資料庫的一個sql語句
Update 語句
Update 語句用於修改表中的數據,語法: update 表名 set 欄位名1=值1,... Where 關鍵字=值
1、使用Update語句,如果省略「 Where條件」,將更新數據表內的全部記錄。
2、賦值時,注意欄位的類型。若為文本型或備注型,則欄位值兩邊要加引號,若為日期/時間型,則欄位值兩邊要加上#號(加引號也可以);若為布爾類型,則該欄位的值為True或 False;若為自動編號類型,則不要給該欄位賦值。
拓展資料
批量修改數據
update 表名 set 欄位名=stuff(欄位名,1,3,'新內容');
如:將表test中name欄位的前3個字元改成'test'
update test set name=stuff(name,1,3,'test');
sqlserver stuff用法
1、作用
刪除指定長度的字元,並在指定的起點插入另一組字元。
2、語法
STUFF ( character_expression , start , length ,character_expression )
3、示例
在第一個字元串stringtest中刪除從第3個位置(字元r)開始的三個字元,然後在刪除的起始位置插入第二個字元串,返回一個新的字元串。
select stuff('stringtest',3,3,'ok')
結果 stroktest
4、參數
character_expression
一個字元數據表達式。character_expression可以是常量、變數,也可以是字元列或二進制數據列。
start
一個整數,指定要刪除和插入的開始位置。如果start或length為負,則返回空字元串。如果start比第一個character_expression長,則返回空字元串。start可以是bigint類型。
length
一個整數,指定要刪除的字元串數。如果length比第一個character_expression長,則最多刪除到最後一個character_expression中的最後一個字元。length可以是bigint類型。
5、返回類型
如果character_expression是受支持的字元數據類型,則返回字元數據。如果character_expression是一個不受支持的binary數據類型,則返回二進制數據。
6、備注
如果結果值大於返回類型支持的最大數,則產生錯誤
6. sql update 語句是什麼
UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值,update語句的寫法:
1、UPDATE table_name。
2、SET column1=value1,column2=value2,...。
3、WHERE column(1)=value(1),column(2)=value(2)...and column(n)=value(n)。
4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'。
SQL語句中UPDATE的三種用法:
一、環境:
MySQL-5.0.41-win32。
Windows XP professional。
二、建立測試環境:
DROP TABLE IF EXISTS t_test。
CREATE TABLE t_test 。
bs bigint(20) NOT NULL auto_increment。
username varchar(20) NOT NULL。
password varchar(20) default NULL。
remark varchar(200) default NULL。
PRIMARY KEY (bs)。
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk。
INSERT INTO t_test VALUES (1,'lavasoft','123456',NULL)。
INSERT INTO t_test VALUES (2,'hello',NULL,NULL)。
INSERT INTO t_test VALUES (3,'haha',zz,tt)。
7. ASP sqL修改語句
ActiveServerPages,ASP0126(0x80004005)-->找不到包含文件
(0x80040E21)-->sql語句出錯(數據類型不匹配或表名(欄位名)錯誤或表處於編輯狀態,或表不存在於conn打開的資料庫中)
(0x80040E14)-->sql語句出錯(欄位名錯誤,或數據類型不匹配)
(0x80040E07)-->sql語句出錯(要插入或更新的欄位的類型與變數數據類型不匹配)
(0x80040E57)-->sql語句出錯(要插入或更新的數據溢出)
(0x80040E10)-->sql語句出錯(update欄位名或要更新的數據類型錯誤)
(0x80004005)-->sql語句出錯(要插入或更新的欄位的數值不能為空值)
(0x80004005)
-->打開資料庫出錯,沒有在指定目錄發現資料庫
(0x80040E37)-->沒有發現表
8. sql update 語句是什麼
UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值,update語句的寫法:
1、UPDATE table_name
2、SET column1=value1,column2=value2,...
3、WHERE column(1)=value(1),column(2)=value(2)...and column(n)=value(n);
4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'。
用途:更新表中原有數據
單獨使用,使用where匹配欄位
set後面,更新欄位值,既可以一次一項,也可以一次多項
例:
「Person」表中的原始數據:
LastName FirstName Address City
Nilsen Fred Kirkegt 56 Stavanger
Rasmussen Storgt 67
運行下面的SQL將Person表中LastName欄位為」Rasmussen」的FirstName更新為」Nina」:
UPDATE Person SET FirstName = 'Nina' WHERE LastName = 'Rasmussen'。
9. sql修改語句
按順序排下去
select
列名
from
表名
order
by
列名
--正序,出來的就是1,2,3
select
列名
from
表名
order
by
列名
desc--倒序,出來的就是3,2,1
你改成0003前邊000不見了,是因為你那個欄位是number型的吧,是number型的只保留第一個有效數字以後的東西,有效數字的概念你懂吧?
-----補充-------
沒按順序是因為你order
by的欄位不對吧?
你先看看你的那個欄位的類型是什麼吧?
10. sql資料庫修改語句
平常寫到編輯器里的SQL語句,是update
aa
set
欄位名1='
字元型',欄位名2=數值型在編程語言里。當你要引用變數時,變數是用(''+變數+")雙引號引起來的所以當你在編程里寫語句的時候,就是update
aa
set
欄位名1='"+變數+"',欄位名2="+變數+"