SQL 的 增刪改查 語句
SQL常用語句一覽
(1)數據記錄篩選:
sql="select*from數據表where字段名=字段值orderby字段名[desc]"
sql="select*from數據表where字段名like'%字段值%'orderby字段名[desc]"
sql="selecttop10*from數據表where字段名orderby字段名[desc]"
sql="select*from數據表where字段名in('值1','值2','值3')"
sql="select*from數據表where字段名between值1and值2"
(2)更新數據記錄:
sql="update數據表set字段名=字段值where條件表達式"
sql="update數據表set字段1=值1,字段2=值2……字段n=值nwhere條件表達式"
(3)刪除數據記錄:
sql="deletefrom數據表where條件表達式"
sql="deletefrom數據表"(將數據表所有記錄刪除)
(4)添加數據記錄:
sql="insertinto數據表(字段1,字段2,字段3…)values(值1,值2,值3…)"
sql="insertinto目標數據表select*from源數據表"(把源數據表的記錄添加到目標數據表)
【求】 一些常用的SQL 添加 查詢 修改語句
(1) 數據記錄篩選:
sql="select * from 數據表 where 字段名=字段值 order by 字段名 "
sql="select * from 數據表 where 字段名 like '%字段值%‘ order by 字段名 "
sql="select top 10 * from 數據表 where 字段名 order by 字段名 "
sql="select * from 數據表 where 字段名 in ('值1','值2','值3')"
sql="select * from 數據表 where 字段名 between 值1 and 值2"
(2) 更新數據記錄:
sql="update 數據表 set 字段名=字段值 where 條件表達式"
sql="update 數據表 set 字段1=值1,字段2=值2 …… 字段n=值n where 條件表達式"
(3) 刪除數據記錄:
sql="delete from 數據表 where 條件表達式"
sql="delete from 數據表" (將數據表所有記錄刪除)
(4) 添加數據記錄:
sql="insert into 數據表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"
sql="insert into 目標數據表 select * from 源數據表" (把源數據表的記錄添加到目標數據表)
(5) 數據記錄統計函數:
AVG(字段名) 得出一個表格欄平均值
COUNT(*|字段名) 對數據行數的統計或對某一欄有值的數據行數統計
MAX(字段名) 取得一個表格欄最大的值
MIN(字段名) 取得一個表格欄最小的值
SUM(字段名) 把數據欄的值相加
引用以上函數的方法:
sql="select sum(字段名) as 別名 from 數據表 where 條件表達式"
set rs=*(sql)
用 rs("別名") 獲取統的計值,其它函數運用同上。
(5) 數據表的建立和刪除:
CREATE TABLE 數據表名稱(字段1 類型1(長度),字段2 類型2(長度) …… )
例:CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE 數據表名稱 (永久性刪除一個數據表)
(6) 記錄集對象的方法:
*xt 將記錄指針從當前的位置向下移一行
*evious 將記錄指針從當前的位置向上移一行
*rst 將記錄指針移到數據表第一行
*st 將記錄指針移到數據表最后一行
*teposition=N 將記錄指針移到數據表第N行
*tepage=N 將記錄指針移到第N頁的第一行
*ze=N 設置每頁為N條記錄
*unt 根據 pagesize 的設置返回總頁數
*count 返回記錄總數
* 返回記錄指針是否超出數據表首端,true表示是,false為否
* 返回記錄指針是否超出數據表末端,true表示是,false為否
* 刪除當前記錄,但記錄指針不會向下移動
* 添加記錄到數據表末端
* 更新數據表記錄
判斷所填數據是數字型
if not isNumeric(request("字段名稱")) then
* "不是數字"
else
* "數字"
end if
sql 刪除語句
1、delete 語句用于刪除表中的行。
delete語句執行刪除的過程是每次從表中刪除一行,并且同時將該行的刪除操作作為事務記錄在日志中保存 語法:DELETE FROM 表名稱 WHERE 列名稱 = 值, 如:刪除student表中姓名為張三豐的學生信息-delete from studentwhere name='張三豐'; 2、drop (刪除表):刪除內容和定義,釋放空間。簡單來說就是把整個表去掉.以后要新增數據是不可能的,除非新增一個表。
drop語句將刪除表的結構被依賴的約束(constrain),觸發器(trigger)索引(index);依賴于該表的存儲過程/函數將被保留,但其狀態會變為:invalid。 3、truncate (清空表中的數據):刪除內容、釋放空間但不刪除定義(保留表的數據結構)。
與drop不同的是,只是清空表數據而已。 注意:truncate 不能刪除行數據,要刪就要把表清空。
擴展資料: 數據庫操作中,經常要用到刪除表和刪除表數據,在實際應用中,三者的區別是明確的。 當你不再需要該表時, 用 drop; 當你仍要保留該表,但要刪除所有記錄時, 用 truncate; 當你要刪除部分記錄時(always with a WHERE clause), 用 delete。
truncate 與delete 比較: 1、truncate table 在功能上與不帶 WHERE 子句的 delete語句相同:二者均刪除表中的全部行。 2、truncate 比 delete速度快,且使用的系統和事務日志資源少。
3、truncate 操作后的表比Delete操作后的表要快得多。
修改數據庫的一個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、備注
如果結果值大于返回類型支持的最大數,則產生錯誤