誰能教我幾句最常用的SQL語句
--語 句 功 能 --數據操作 SELECT --從數據庫表中檢索數據行和列 INSERT --向數據庫表添加新數據行 DELETE --從數據庫表中刪除數據行 UPDATE --更新數據庫表中的數據 --數據定義 CREATE TABLE --創建一個數據庫表 DROP TABLE --從數據庫中刪除表 ALTER TABLE --修改數據庫表結構 CREATE VIEW --創建一個視圖 DROP VIEW --從數據庫中刪除視圖 CREATE INDEX --為數據庫表創建一個索引 DROP INDEX --從數據庫中刪除索引 CREATE PROCEDURE --創建一個存儲過程 DROP PROCEDURE --從數據庫中刪除存儲過程 CREATE TRIGGER --創建一個觸發器 DROP TRIGGER --從數據庫中刪除觸發器 CREATE SCHEMA --向數據庫添加一個新模式 DROP SCHEMA --從數據庫中刪除一個模式 CREATE DOMAIN --創建一個數據值域 ALTER DOMAIN --改變域定義 DROP DOMAIN --從數據庫中刪除一個域 --數據控制 GRANT --授予用戶訪問權限 DENY --拒絕用戶訪問 REVOKE --解除用戶訪問權限 --事務控制 COMMIT --結束當前事務 ROLLBACK --中止當前事務 SET TRANSACTION --定義當前事務數據訪問特征 --程序化SQL DECLARE --為查詢設定游標 EXPLAN --為查詢描述數據訪問計劃 OPEN --檢索查詢結果打開一個游標 FETCH --檢索一行查詢結果 CLOSE --關閉游標 PREPARE --為動態執行準備SQL 語句 EXECUTE --動態地執行SQL 語句 DESCRIBE --描述準備好的查詢 ---局部變量 declare @id char(10) --set @id = '10010001' select @id = '10010001' ---全局變量 ---必須以@@開頭 --IF ELSE declare @x int @y int @z int select @x = 1 @y = 2 @z=3 if @x > @y print 'x > y' --打印字符串'x > y' else if @y > @z print 'y > z' else print 'z > y' --CASE use pangu update employee set e_wage = case when job_level = '1' then e_wage*1。
08 when job_level = '2' then e_wage*1。07 when job_level = '3' then e_wage*1。
06 else e_wage*1。 05 end --WHILE CONTINUE BREAK declare @x int @y int @c int select @x = 1 @y=1 while @x =表達式的最小整數返回的數據類型與表達式相同可為 --INTEGER/MONEY/REAL/FLOAT 類型 FLOOR(numeric_expression) --返回 AS [ length ]) CONVERT() 函數語法如下 CONVERT() ([ length ], [, style]) select cast(100+99 as char) convert(varchar(12), getdate()) 運行結果如下 ------------------------------ ------------ 199 Jan 15 2000 ----日期函數---- DAY() --函數返回date_expression 中的日期值 MONTH() --函數返回date_expression 中的月份值 YEAR() --函數返回date_expression 中的年份值 DATEADD( , ,) --函數返回指定日期date 加上指定的額外日期間隔number 產生的新日期 DATEDIFF( , ,) --函數返回兩個指定日期在datepart 方面的不同之處 DATENAME( , ) --函數以字符串的形式返回日期的指定部分 DATEPART( , ) --函數以整數值的形式返回日期的指定部分 GETDATE() --函數以DATETIME 的缺省格式返回系統當前的日期和時間 ----系統函數---- APP_NAME() --函數返回當前執行的應用程序的名稱 COALESCE() --函數返回眾多表達式中第一個非NULL 表達式的值 COL_LENGTH(, ) --函數返回表中指定字段的長度值 COL_NAME(, ) --函數返回表中指定字段的名稱即列名 DATALENGTH() --函數返回數據表達式的數據的實際長度 DB_ID(['database_name']) --函數返回數據庫的編號 DB_NAME(database_id) --函數返回數據庫的名稱 HOST_ID() --函數返回服務器端計算機的名稱 HOST_NAME() --函數返回服務器端計算機的名稱 IDENTITY([, seed increment]) [AS column_name]) --IDENTITY() 函數只在SELECT INTO 語句中使用用于插入一個identity column列到新表中 /*select identity(int, 1, 1) as column_name into newtable from oldtable*/ ISDATE() --函數判斷所給定的表達式是否為合理日期 ISNULL(, ) --函數將表達式中的NULL 值用指定值替換 ISNUMERIC() --函數判斷所給定的表達式是否為合理的數值 NEWID() --函數返回一個UNIQUEIDENTIFIER 類型的數值 NULLIF(, ) --NULLIF 函數在expression1 與expression2 相等時返回NULL 值若不相等時則返回expression1 的值 。
數據庫得一些常用語句及其使用方法
數據的操作(增刪改查)1.插入數據:(1)單行INSERT語句INSERT INTO [表名] (字段1,字段2) VALUES (100,'*')(2)多行INSERT語句INSERT INTO [表名] (字段1,字段2) SELECT (字段1,字段2) FROM [表名2] WHERE [條件]2.刪除數據:DELETE FROM [表名] WHERE [字段名]>100更新數據:UPDATE [表名] SET [字段1] = 200,[字段2] = '*' WHERE [字段三] = \'HAIWA\'3.查詢數據:select (字段1,字段2) from [表名] where [條件] order by [字段] desc;4.刪除表:Drop table [表名]5.新增字段:ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL6.刪除字段:ALTER TABLE [表名] DROP COLUMN [字段名]7.修改字段:ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL。
數據庫中常用的sql語句有哪些
1.檢索數據 SELECT prod_nameFROM Products;#檢索單列 SELECT prod_id, prod_name, prod_priceFROMProducts;#檢索多列 SELECT * FROM Products;#檢索所有列 SELECT DISTINCTvend_id FROMProducts;#檢索不同的值 SELECTprod_name FROM Products LIMIT 5;#返回不超過5行數據 SELECTprod_name FROM Products LIMIT 5 OFFSET 5;#返回從第5行起的5行數據。
LIMIT指定返回的行數,LIMIT帶的OFFSET指定從哪兒開始。2.排序檢索數據 SELECTprod_name FROMProducts ORDER BYprod_name;#排序數據 SELECT prod_id, prod_price, prod_name FROMProducts ORDER BY prod_price, prod_name;#按多個列排序 SELECT prod_id, prod_price, prod_name FROMProducts ORDER BY 2, 3;#按列位置排序,第三行表示先按prod_price, 再按prod_name進行排序 SELECT prod_id, prod_price, prod_name FROMProducts ORDER BY prod_priceDESC, prod_name;#prod_price列以降序排序,而prod_name列(在每個價格內)仍然按標準的升序排序3.過濾數據 SELECT prod_name, prod_price FROMProducts WHERE prod_price#檢查單個值 SELECT prod_name, prod_price FROMProducts WHERE vend_id 'DLL01';#不匹配檢查 SELECT prod_name, prod_price FROMProducts WHERE prod_priceBETWEEN 5 AND 10;#范圍值檢查 SELECT cust_name FROMCUSTOMERS WHERE cust_emailIS NULL;#空值檢查4.高級數據過濾 SELECTprod_id, prod_price, prod_name FROMProducts WHERE vend_id = 'DLL01'ANDprod_price #AND操作符 SELECTprod_name, prod_price FROMProducts WHEREvend_id='DLL01' OR vend_id='BRS01';#OR操作符 SELECTprod_name, prod_price FROMProducts WHERE (vend_id = 'DLL01'ORvend_id='BRS01') ANDprod_price >= 10;#求值順序 AND的優先級高于OR SELECTprod_name, prod_price FROMProducts WHERE vend_idIN ('DLL01','BRS01') ORDER BY prod_name;#IN操作符 SELECT prod_name FROMProducts WHERE NOTvend_id = 'DLL01' ORDER BY prod_name;#NOT 操作符 SELECT prod_name FROMProducts WHEREvend_id 'DLL01' ORDER BY prod_name;#NOT 操作符。
數據庫得一些常用語句及其使用方法
數據的操作(增刪改查)
1.插入數據:
(1)單行INSERT語句
INSERT INTO [表名] (字段1,字段2) VALUES (100,'*')
(2)多行INSERT語句
INSERT INTO [表名] (字段1,字段2) SELECT (字段1,字段2) FROM [表名2] WHERE [條件]
2.刪除數據:
DELETE FROM [表名] WHERE [字段名]>100
更新數據:
UPDATE [表名] SET [字段1] = 200,[字段2] = '*' WHERE [字段三] =
\'HAIWA\'
3.查詢數據:
select (字段1,字段2) from [表名] where [條件] order by [字段] desc;
4.刪除表:
Drop table [表名]
5.新增字段:
ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL
6.刪除字段:
ALTER TABLE [表名] DROP COLUMN [字段名]
7.修改字段:
ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL
sql語句大全
sp_helpdb ----------查本服務器中所有數據庫 可跟庫名 例:sp_helpdb 庫名 ------------------------------------------------------------- sp_databases -------------查看本服務器中可用的數據庫 -------------------------------------------------------------------- sp_helpfile -------------------查看當前工作著的數據庫 ----------------------------------------------------------- sp_helpfilegroup ---------------查看當前工作著的組的信息。
可加參數,跟組名 例:sp_helpdb 庫名 ---------------------------------------------------------------- sp_renamedb -----------改數據庫名 例:sp_renamedb 舊庫名,新庫名 ---------------------------------------------------------------- select groupname from sysfilegroups where status=24 ---------查看文件組 =8是查只讀文件組 =16是查默認文件組 =24是查即只讀又默認 --------------------------------------------------------------------------- sp_dboption ----------修改數據庫選項值 例:sp_dboption 庫名 選項 值 值決定真假 一般用:true/faule 或off/on表示 選項一般常用為:use only(數據庫擁有者)single user(單一用戶)read only(只讀) -------------------------------------------------------------------------- dbcc shrinkdatabase ---------收縮數據庫 例:dbcc shrinkdatabase (庫名,10) 收縮庫,剩余空間保留10%,后面如果不加notruncate,則釋放空間操作系統, 加truncateonly,歸還空間給操作系統,但忽略所給的百分比數值。 ---------------------------------------------------------------------- dbcc shrinkfile ---------收縮文件 用法與ddcc shrinkdatabase相同。
---------------------------------------------------------------------- alter database ---------------修改數據庫 用法:這是起始句,告訴要做的是修改數據庫,然后再接要做什么工作。每次只做一項工作 alter database 庫名 add file 文件名。
.to filegroup 文件組名 ----------------增加庫文件,格式與建庫時括號里指定大小時的格式一樣 add log file 文件名 -------------增加日志文件 remove file 文件名 ---------刪除庫內的文件 add filegroup 文件組名 -----------增加一個文件組 modify file 文件名 -------------修改文件屬性 modify filegroup 組名 ------------修改文件組屬性 --------------------------------------------------------------------------- drop database --------------刪除數據庫 例:drop database 庫名1,庫名2 ---------可同時刪除兩個庫 ------------------------------------------------------------------------ create table 表名 (列名 類型, 列名 類型) -------------------建立表 -------------------------------------------------------------------- select * from 表名 ---------查詢表結構 -------------------------------------------------------------------- select @@dbts ----------查詢最后一次操作 -------------------------------------------------------------------- insert into 表名 (列名,列名) values (變量,變量。..) ------------向表中插入數據 如省略列名,則必須把每列的變量填全,不可缺少。
可以省略 into -------------------------------------------------------------------- sp_addtype 自定義類型名 系統類型名 -------用戶自定義類型 -------------------------------------------------------------------- sp_droptype 自定義類型名 -----------刪除自定義類型 如有數據庫正在使用該自定義類型,則不能刪除 -------------------------------------------------------------------- alter table ---------修改表結構 用法: alter table 表名 alter column 列名 類型 ---------修改列的類型 drop column 列名 --------刪除列 add (column) 列名 --------增加列,實際用時不加 column ----------------------------------------------------------------- sp_help -------------查看數據庫中對象信息 用法: sp_help 表名 ---------------查表的信息 或 sp_help 庫名 --------------查庫信息 后面可以跟庫名或者表名,是查數據庫或者表的信息 ----------------------------------------------------------------- sp_spaceused --------查看對象占用的空間信息 用法: sp_spaceused ----------查當前庫占用空間信息 或 sp_spaceused 表名 ----------查指定表占用空間信息 后面可以加表名查看表占空間信息。如不加,則查看當前數據庫。
------------------------------------------------------------------ sp_depends ------------查看對象的相關性 用法: sp_depends 表名 -----------后面加表名 ------------------------------------------------------------------ sp_rename ---------------重新命名 用法: sp_rename 舊表名,新表名 ---------改表名 或 sp_rename '表名.舊列名','新列名' 'column' -------修改列名 -------------------------------------------------------------------- create index --------------創建索引 用法: create index 索引名 on 表名 (列名) ------創建索引 或: create unique clustered index 索引名 on 表名 (列名) ------創建簇集唯一索引 unique是建唯一索引 clustered是建簇集索引 ---非簇集索引用:nonclustered ---------------------------------------------------------------------- select top ---------查表中前幾行 用法: select top 3 * from 表名 -------查表中前三行 或: select top 10 percent * from 表名 -------顯示表中前10%數據 ------------加入percent是百分比的意思。只以大于的最小整數,無小數 ---------------------------------------------------------------------- select 列名,列名,列名 from 表名 -------顯示表中特定的列 ---------------------------------------------------------------------- 。
數據庫語言有哪些
數據庫語言最常用的是SQL (結構化查詢語言)。
t-sql 是微軟SQL SERVER的SQL語句,兼容SQL,并具有SQL SERVER本身獨有的函數、關鍵字;
pl/sql是針對Oracle數據庫的第三方工具;
k-sql是國內最領先ERP廠商金蝶軟件自主使用的sql語言。
都是基于sql的,兼容sql,也有符合自己數據庫的特色。可以這么理解,SQL是普通話,而t-sql、pl/sql、ksql是方言。
企業比較常用的大型數據庫有Oracle (甲骨文)、db2(IBM) 、sql server(微軟) 、Sybase(剛被sap收購)、Mysql(sun,已被甲骨文收購)Mysql也算大型數據庫。
小
型數據庫有access、MSDE
2000、FoxPro(原名foxbase曾是狐貍公司的)等,這三個都是微軟的。foxpro是一款非常方便好用的桌面數據庫開發工具,至今還有很多
公司用來做數據處理。其他還有些我不熟悉的,就不寫了。了解這么多數據庫沒用,關鍵是學會用一兩種就行了。
了解更多開源相關,去LUPA社區看看吧。