sql基本語句有哪些
查詢語句-select * from table;
select * from table where 條件1=數值 and 條件2=數值;
select * from table where id in (select id from table);兩表關聯
select a.a,b.b,c.c from table1 a,table2 b,table3 c where *1=*2;
插入語句-insert into table (字段1,字段2,字段3,……)
values (數值1,數值2,數值3,……);
更新語句-update 表名 set 數值 where=id = 1;
添加列語句-alter table 表名
add (列名1 類型1,列名2 類型2,列名3 類型3,……);
修改列類型-alter table 表名
modify (列名1 類型1,列名2 類型2,列名3 類型3,……);
刪除列語句-alter table 表名
drop column 列名s;
顯示查詢時間-set timing on;
刪除表語句-deltet table 表名;
清空表數據-truncate table 表名;
修改列名 - ALTER TABLE emp RENAME COLUMN comm TO newa;
sql 語句大全
1. 查看數據庫的版本 select @@version 2. 查看數據庫所在機器操作系統參數 exec master..xp_msver 3. 查看數據庫啟動的參數 sp_configure 4. 查看數據庫啟動時間 select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1 查看數據庫服務器名和實例名 print 'Server Name。
:' + convert(varchar(30),@@SERVERNAME) print 'Instance。
:' + convert(varchar(30),@@SERVICENAME) 5. 查看所有數據庫名稱及大小 sp_helpdb 重命名數據庫用的SQL sp_renamedb 'old_dbname', 'new_dbname' 6. 查看所有數據庫用戶登錄信息 sp_helplogins 查看所有數據庫用戶所屬的角色信息 sp_helpsrvrolemember 修復遷移服務器時孤立用戶時,可以用的fix_orphan_user腳本或者LoneUser過程 更改某個數據對象的用戶屬主 sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner' 注意:更改對象名的任一部分都可能破壞腳本和存儲過程。 把一臺服務器上的數據庫用戶登錄信息備份出來可以用add_login_to_aserver腳本 查看某數據庫下,對象級用戶權限 sp_helprotect 7. 查看鏈接服務器 sp_helplinkedsrvlogin 查看遠端數據庫用戶登錄信息 sp_helpremotelogin 8.查看某數據庫下某個數據對象的大小 sp_spaceused @objname 還可以用sp_toptables過程看最大的N(默認為50)個表 查看某數據庫下某個數據對象的索引信息 sp_helpindex @objname 還可以用SP_NChelpindex過程查看更詳細的索引情況 SP_NChelpindex @objname clustered索引是把記錄按物理順序排列的,索引占的空間比較少。
對鍵值DML操作十分頻繁的表我建議用非clustered索引和約束,fillfactor參數都用默認值。 查看某數據庫下某個數據對象的的約束信息 sp_helpconstraint @objname9.查看數據庫里所有的存儲過程和函數 use @database_name sp_stored_procedures 查看存儲過程和函數的源代碼 sp_helptext '@procedure_name' 查看包含某個字符串@str的數據對象名稱 select distinct object_name(id) from syscomments where text like '%@str%' 創建加密的存儲過程或函數在AS前面加WITH ENCRYPTION參數 解密加密過的存儲過程和函數可以用sp_decrypt過程 10.查看數據庫里用戶和進程的信息 sp_who 查看SQL Server數據庫里的活動用戶和進程的信息 sp_who 'active' 查看SQL Server數據庫里的鎖的情況 sp_lock 進程號1--50是SQL Server系統內部用的,進程號大于50的才是用戶的連接進程. spid是進程編號,dbid是數據庫編號,objid是數據對象編號 查看進程正在執行的SQL語句 dbcc inputbuffer () 推薦大家用經過改進后的sp_who3過程可以直接看到進程運行的SQL語句 sp_who3 檢查死鎖用sp_who_lock過程 sp_who_lock 11.查看和收縮數據庫日志文件的方法 查看所有數據庫日志文件大小 dbcc sqlperf(logspace) 如果某些日志文件較大,收縮簡單恢復模式數據庫日志,收縮后@database_name_log的大小單位為M backup log @database_name with no_log dbcc shrinkfile (@database_name_log, 5) 12.分析SQL Server SQL 語句的方法:set statistics time {on | off} set statistics io {on | off} 圖形方式顯示查詢執行計劃 在查詢分析器->查詢->顯示估計的評估計劃(D)-Ctrl-L 或者點擊工具欄里的圖形 文本方式顯示查詢執行計劃 set showplan_all {on | off} set showplan_text { on | off } set statistics profile { on | off } 13.出現不一致錯誤時,NT事件查看器里出3624號錯誤,修復數據庫的方法 先注釋掉應用程序里引用的出現不一致性錯誤的表,然后在備份或其它機器上先恢復然后做修復操作 alter database [@error_database_name] set single_user 修復出現不一致錯誤的表 dbcc checktable('@error_table_name',repair_allow_data_loss) 或者可惜選擇修復出現不一致錯誤的小型數據庫名 dbcc checkdb('@error_database_name',repair_allow_data_loss) alter database [@error_database_name] set multi_user CHECKDB 有3個參數:repair_allow_data_loss 包括對行和頁進行分配和取消分配以改正分配錯誤、結構行或頁的錯誤,以及刪除已損壞的文本對象,這些修復可能會導致一些數據丟失。
修復操作可以在用戶事務下完成以允許用戶回滾所做的更改。 如果回滾修復,則數據庫仍會含有錯誤,應該從備份進行恢復。
如果由于所提供修復等級的緣故遺漏某個錯誤的修復,則將遺漏任何取決于該修復的修復。 修復完成后,請備份數據庫。
repai*_**st 進行小的、不耗時的修復操作,如修復非聚集索引中的附加鍵。 這些修復可以很快完成,并且不會有丟失數據的危險。
repair_rebuild 執行由 repai*_**st 完成的所有修復,包括需要較長時間的修復(如重建索引)。 執行這些修復時不會有丟失數據的危險。
添加、刪除、修改使用*e(Sql)命令執行操作 ╔--------------------╗ ☆ 數據記錄篩選 ☆ ╚--------------------╝ 注意:單雙引號的用法可能有誤(沒有測式) Sql = "Select Distinct 字段名 From 數據表" Distinct函數,查詢數據庫存表內不重復的記錄 Sql = "Select Count(*) From 數據表 where 字段名1>#18:0:0# and 。
SQL Server里常用的語句有哪些
一、 簡單查詢 簡單的Transact-SQL查詢只包括選擇列表、 FROM子句和WHERE子句。
它們分別說明所查詢列、查詢的 表或視圖、以及搜索條件等。例如, 下面的語句查詢testtable表中姓名為“張三” 的nickname字段和email字段。
SELECT nickname,email FROM testtable WHERE name='張三' (一) 選擇列表 選擇列表(select_list)指出所查詢列, 它可以是一組列名列表、星號、表達式、變量( 包括局部變量和全局變量)等構成。 1、選擇所有列 例如,下面語句顯示testtable表中所有列的數據: SELECT * FROM testtable 2、 選擇部分列并指定它們的顯示次序查詢結果集合中數據的排列順序與 選擇列表中所指定的列名排列順序相同。
例如: SELECT nickname,email FROM testtable 3、更改列標題 在選擇列表中,可重新指定列標題。定義格式為: 列標題=列名 列名 列標題如果指定的列標題不是標準的標識符格式時, 應使用引號定界符,例如,下列語句使用漢字顯示列標題: SELECT 昵稱=nickname,電子郵件=email FROM testtable 4、刪除重復行 SELECT語句中使用ALL或DISTINCT選項來顯示表中 符合條件的所有行或刪除其中重復的數據行,默認 為ALL。
使用DISTINCT選項時, 對于所有重復的數據行在SELECT返回的結果集合中只保留一行 。 5、限制返回的行數 使用TOP n [PERCENT]選項限制返回的數據行數,TOP n說明返回n行,而TOP n PERCENT時,說明n是 表示一百分數,指定返回的行數等于總行數的百分之幾。
例如: SELECT TOP 2 * FROM testtable SELECT TOP 20 PERCENT * FROM testtable (二)FROM子句 FROM子句指定SELECT語句查詢及與查詢相關的表或視圖。 在FROM子句中最多可指定256個表或視圖, 它們之間用逗號分隔。
在FROM子句同時指定多個表或視圖時, 如果選擇列表中存在同名列,這時應使用對象名限定這些列 所屬的表或視圖。 例如在usertable和citytable表中同時存在ci tyid列,在查詢兩個表中的cityid時應 使用下面語句格式加以限定: SELECT username,* FROM usertable,citytable WHERE *=citytable. cityid 在FROM子句中可用以下兩種格式為表或視圖指定別名: 表名as 別名 表名 別名 (二) FROM子句 FROM子句指定SELECT語句查詢及與查詢相關的表或視圖。
在FROM子句中最多可指定256個表或視圖, 它們之間用逗號分隔。在FROM子句同時指定多個表或視圖時, 如果選擇列表中存在同名列,這時應使用對象名限定這些列 所屬的表或視圖。
例如在usertable和citytable表中同時存在ci tyid列, 在查詢兩個表中的cityid時應使用下面語句格式加以限定: SELECT username,* FROM usertable,citytable WHERE *=citytable. cityid 在FROM子句中可用以下兩種格式為表或視圖指定別名: 表名as 別名 表名 別名 例如上面語句可用表的別名格式表示為: SELECT username,* FROM usertable a,citytable b WHERE *=* SELECT不僅能從表或視圖中檢索數據, 它還能夠從其它查詢語句所返回的結果集合中查詢數據。 例如: SELECT *_fname+*_lname FROM authors a,titleauthor ta (SELECT title_id,title FROM titles WHERE ytd_sales>10000 ) AS t WHERE *_id=*_id AND *_id=*_id 此例中,將SELECT返回的結果集合給予一別名t, 然后再從中檢索數據。
(三) 使用WHERE子句設置查詢條件 WHERE子句設置查詢條件,過濾掉不需要的數據行。 例如下面語句查詢年齡大于20的數據: SELECT * FROM usertable WHERE age>20 WHERE子句可包括各種條件運算符: 比較運算符(大小比較):>、>=、=、<、<=、<>、!>、 !< 范圍運算符(表達式值是否在指定的范圍):BETWEEN… AND… NOT BETWEEN…AND… 列表運算符(判斷表達式是否為列表中的指定項):IN (項1,項2……) NOT IN (項1,項2……) 模式匹配符(判斷值是否與指定的字符通配格式相符):LIKE、 NOT LIKE 空值判斷符(判斷表達式是否為空):IS NULL、NOT IS NULL 邏輯運算符(用于多條件的邏輯連接):NOT、AND、OR 1、范圍運算符例:age BETWEEN 10 AND 30相當于age>=10 AND age<=30 2、列表運算符例:country IN ('Germany','China') 3、模式匹配符例:常用于模糊查找, 它判斷列值是否與指定的字符串格式相匹配。
可用于char、 varchar、text、ntext、 datetime和smalldatetime等類型查詢。 可使用以下通配字符: 百分號%:可匹配任意類型和長度的字符,如果是中文, 請使用兩個百分號即%%。
下劃線_:匹配單個任意字符,它常用來限制表達式的字符長度。 方括號[]:指定一個字符、字符串或范圍, 要求所匹配對象為它們中的任一個。
[^]:其取值也[] 相同,但它要求所匹配對象為指定字符以外的任一個字符。 例如: 限制以Publishing結尾,使用LIKE '%Publishing' 限制以A開頭:LIKE '[A]%' 限制以A開頭外:LIKE '[^A]%' 4、空值判斷符例WHERE age IS NULL 5、邏輯運算符:優先級為NOT、AND、OR (四)查詢結果排序 使用。
常用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
sql server的sql語句和oracle的sql語句有什么不同嗎
Oracle與Sql server都遵循SQL-92標準:
區別如下:
*中表名,字段名,存儲過程名,變量名不能超過30個字符串長度。
*中不支持Top 語法。使用whererownum
*中光標的使用與SqlServer中有挺大差別,主要是在循環控制方面不一致。
在Oracle中如果某列是Date類型,那么它默認的格式是yyyy-MM-dd,如果使用where colDate = '2005-06-08 17:14:57'就會出錯,'2005-06-08'可以。如果此時需要精確比較時間(小時,分,秒),可以采用下列方法:TO_DATE('2005-6-8 17:14:57','yyyy-mm-dd hh24:mi:ss')。由于Oracle和SQLServer在DateTime上對SQL標準的拓展實現方式不同,因此不能用同一個SQL實現。
*中的TimeStamp(時間戳)與SqlServer中的差別很大。SqlServer中的TimeStamp是二進制格式存儲在數據庫中,可以將DataSet中的這個字段類型設定為base64Binary類型。Oracle中的TimeStamp是時間格式存儲的。因此,無法用同一個DataSet既裝載SqlServer的TimeStamp,有裝載Oracle的TimeStamp.由于在應用程序中很少用到這個值,因此可以不檢索這個字段。
*中的TimeStamp不能像SqlServer在傳入數據的時候自動填充,可以設定默認值systimestamp來實現類似功能。
*中沒有Boolean的字段類型,可以用intger或者char代替SqlServer中的bit類型。
*中會將””空字符串當多NULL處理,也就是說,當應用程序往數據庫中插入一個空字符串時,實際數據庫會嘗試插入一個NULL。如果這個字段是NOTNULL類型,那么就會出錯,這種情況下可以用別的默認值代替空字符串。當從SqlServer導入數據到Oracle的時候,在NOTNULL列上的空字符串會導致導出操作失敗。此時可以在導出向導中手工修改SQL腳本,將空字符串設定成一個特殊值。
*中不支持,SELECT . . INTO創建新表,要用CREATE TABLE 表名AS SELECT 語句 ,創建新表。
9.在Oracle中連接字符串用 ‘||’ 或CONCAT(COL1,COL2)函數,不能使用‘+’。
統配符 [],[^] ,Oracle好像也不支持。
SQL 數據庫常用命令及語法舉例
SQL常用語句一覽 sp_password null,'新密碼','sa' 修改數據庫密碼(1)數據記錄篩選: sql="select * from 數據表 where 字段名=字段值 orderby 字段名 [desc] " sql="select * from 數據表 where 字段名 like '%字段值%' orderby 字段名 [desc]" sql="select top10 * from 數據表 where 字段名 orderby 字段名[desc]" 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…) values(值1,值2,值3…)" sql="insert into 目標數據表 select * from 源數據表"(把源數據表的記錄添加到目標數據表) (5)數據記錄統計函數: AVG(字段名)得出一個表格欄平均值 COUNT(*|字段名)對數據行數的統計或對某一欄有值的數據行數統計 MAX(字段名)取得一個表格欄最大的值 MIN(字段名)取得一個表格欄最小的值 SUM(字段名)把數據欄的值相加 引用以上函數的方法: sql="selectsum(字段名)as別名from數據表where條件表達式" setrs=*(sql) 用rs("別名")獲取統的計值,其它函數運用同上。
(5)數據表的建立和刪除: CREATETABLE數據表名稱(字段1類型1(長度),字段2類型2(長度)……) 例:CREATETABLEtab01 (namevarchar (50), datetimedefaultnow ()) DROPTABLE數據表名稱(永久性刪除一個數據表) 4.記錄集對象的方法: *xt將記錄指針從當前的位置向下移一行 *evious將記錄指針從當前的位置向上移一行 *rst將記錄指針移到數據表第一行 *st將記錄指針移到數據表最后一行 *teposition=N將記錄指針移到數據表第N行 *tepage=N將記錄指針移到第N頁的第一行 *ze=N設置每頁為N條記錄 *unt根據pagesize的設置返回總頁數 *count返回記錄總數 *返回記錄指針是否超出數據表首端,true表示是,false為否 *返回記錄指針是否超出數據表末端,true表示是,false為否 *刪除當前記錄,但記錄指針不會向下移動 *添加記錄到數據表末端 *更新數據表記錄 SQL語句的添加、刪除、修改雖然有如下很多種方法,但在使用過程中還是不夠用,不知是否有高手把更多靈活的使用方法貢獻出來? 添加、刪除、修改使用*e(Sql)命令執行操作 ╔----------------╗ ☆ 數據記錄篩選 ☆ ╚----------------╝ 注意:單雙引號的用法可能有誤(沒有測式) Sql = "Select Distinct 字段名 From 數據表" Distinct函數,查詢數據庫存表內不重復的記錄 Sql = "Select Count(*) From 數據表 where 字段名1>#18:0:0# and 字段名1< #19:00# " count函數,查詢數庫表內有多少條記錄,“字段名1”是指同一字段 例: set rs=*e("select count(id) as idnum from news") * rs("idnum") sql="select * from 數據表 where 字段名 between 值1 and 值2" Sql="select * from 數據表 where 字段名 between #2003-8-10# and #2003-8-12#" 在日期類數值為2003-8-10 19:55:08 的字段里查找2003-8-10至2003-8-12的所有記錄,而不管是幾點幾分。 select * from tb_name where datetime between #2003-8-10# and #2003-8-12# 字段里面的數據格式為:2003-8-10 19:55:08,通過sql查出2003-8-10至2003-8-12的所有紀錄,而不管是幾點幾分。
Sql="select * from 數據表 where 字段名=字段值 order by 字段名 [desc]" Sql="select * from 數據表 where 字段名 like '%字段值%' order by 字段名 [desc]" 模糊查詢 Sql="select top 10 * from 數據表 where 字段名 order by 字段名 [desc]" 查找數據庫中前10記錄 Sql="select top n * form 數據表 order by newid()" 隨機取出數據庫中的若干條記錄的方法 top n,n就是要取出的記錄數 Sql="select * from 數據表 where 字段名 in ('值1','值2','值3')" ╔----------------╗ ☆ 添加數據記錄 ☆ ╚----------------╝ sql="insert into 數據表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)" sql="insert into 數據表 valuess (值1,值2,值3 …)" 不指定具體字段名表示將按照數據表中字段的順序,依次添加 sql="insert into 目標數據表 select * from 源數據表" 把源數據表的記錄添加到目標數據表 ╔----------------╗ ☆ 更新數據記錄 ☆ ╚----------------╝ Sql="update 數據表 set 字段名=字段值 where 條件表達式" Sql="update 數據表 set 字段1=值1,字段2=值2 …… 字段n=值n where 條件表達式" Sql="update 數據表 set 字段1=值1,字段2=值2 …… 字段n=值n " 沒有條件則更新整個數據表中的指定字段值 ╔----------------╗ ☆ 刪除數據記錄 ☆ ╚----------------╝ Sql="delete from 。
SQL server 2005 的簡單語句
1、說明:創建數據庫 CREATE DATABASE database-name 2、說明:刪除數據庫 drop database dbname 3、說明:備份sql server --- 創建 備份數據的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_*' --- 開始 備份 BACKUP DATABASE pubs TO testBack 4、說明:創建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根據已有的表創建新表: A:create table tab_new like tab_old (使用舊表創建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、說明:刪除新表drop table tabname 6、說明:增加一個列 Alter table tabname add column col type 注:列增加后將不能刪除。
DB2中列加上后數據類型也不能改變,唯一能改變的是增加varchar類型的長度。 7、說明:添加主鍵: Alter table tabname add primary key(col) 說明:刪除主鍵: Alter table tabname drop primary key(col) 8、說明:創建索引:create [unique] index idxname on tabname(col….) 刪除索引:drop index idxname 注:索引是不可更改的,想更改必須刪除重新建。
9、說明:創建視圖:create view viewname as select statement 刪除視圖:drop view viewname 10、說明:幾個簡單的基本的sql語句 選擇:select * from table1 where 范圍 插入:insert into table1(field1,field2) values(value1,value2) 刪除:delete from table1 where 范圍 更新:update table1 set field1=value1 where 范圍 查找:select * from table1 where field1 like '%value1%' ---like的語法很精妙,查資料! 排序:select * from table1 order by field1,field2 [desc] 總數:select count * as totalcount from table1 求和: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 11、說明:幾個高級查詢運算詞 A: UNION 運算符 UNION 運算符通過組合其他兩個結果表(例如 TABLE1 和 TABLE2)并消去表中任何重復行而派生出一個結果表。當 ALL 隨 UNION 一起使用時(即 UNION ALL),不消除重復行。
兩種情況下,派生表的每一行不是來自 TABLE1 就是來自 TABLE2。 B: EXCEPT 運算符 EXCEPT 運算符通過包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重復行而派生出一個結果表。
當 ALL 隨 EXCEPT 一起使用時 (EXCEPT ALL),不消除重復行。 C: INTERSECT 運算符 INTERSECT 運算符通過只包括 TABLE1 和 TABLE2 中都有的行并消除所有重復行而派生出一個結果表。
當 ALL 隨 INTERSECT 一起使用時 (INTERSECT ALL),不消除重復行。 注:使用運算詞的幾個查詢結果行必須是一致的。
12、說明:使用外連接 A、left outer join: 左外連接(左連接):結果集幾包括連接表的匹配行,也包括左連接表的所有行。 SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join: 右外連接(右連接):結果集既包括連接表的匹配連接行,也包括右連接表的所有行。
C:full outer join: 全外連接:不僅包括符號連接表的匹配行,還包括兩個連接表中的所有記錄。 其次,大家來看一些不錯的sql語句 1、說明:復制表(只復制結構,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1 <>1 法二:select top 0 * into b from a 2、說明:拷貝表(拷貝數據,源表名:a 目標表名:b) (Access可用) insert into b(a, b, c) select d,e,f from b; 3、說明:跨數據庫之間表的拷貝(具體數據使用絕對路徑) (Access可用) insert into b(a, b, c) select d,e,f from b in '具體數據庫' where 條件 例子:..from b in '"&*h(".")&"\*" &"' where.. 4、說明:子查詢(表名1:a 表名2:b) select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3) 5、說明:顯示文章、提交人和最后回復時間 select *,*me,*e from table a,(select max(adddate) adddate from table where *=*) b 6、說明:外連接查詢(表名1:a 表名2:b) select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c 7、說明:在線視圖查詢(表名1:a ) select * from (SELECT a,b,c FROM a) T where t.a > 1; 8、說明:between的用法,between限制查詢數據范圍時包括了邊界值,not between不包括 select * from table1 where time between time1 and time2 select a,b,c, from table1 where a not between 數值1 and 數值2 9、說明:in 的使用方法 select * from table1 where a [not] in ('值1','值2','值4','值6') 10、說明:兩張關聯表,刪除主表中已經在副表中沒有的信息 delete from table1 where not exists ( select * from table2 where *1=*1 ) 11、說明:四表聯查問題: select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where 。
.. 12、說明:日程安排提前五分鐘提醒 SQL: select * from 日程安排 where datediff('minute',f開始時。
SQLserver幫我分析以下語句的具體意思啊?怎么樣才能把SQ 愛問知
這句SQL語句就是在數據庫中建立一張表,詳細說明如下,請參考: CREATE TABLE:是建表語句的前導關鍵字。
Employee:是要建表的表名。 ():這個括號是把表列及其屬性進行界定。
[EmployeeID],[Name],[LoginName],[Password],[Email],[DeptID],[BasicSalary],[Title],[Telephone],[OnboardDate],[SelfIntro],[VacationRemain],[EmployeeLevel],[EmployeeLevel]:這些都是表中要定義的列。 [int],[nvarchar],[binary],[datetime],[image]:這些都是定義列的數據類型,分別是:整型,CHAR的變量字符類型,二進制類型,日期時間類型,圖形數據類型。
在int后面的IDENTITY:表示這是一個系統自動增長列,常作為ID使用。 在列名和類型中使用的[]:這是SQL SERVER為避免用戶定義與關鍵保留字沖突而采用的界定符。
如果使用平常的字符名稱,[]中括號可以省略。 COLLATE:這是create定義子句,定義列的排序規則。
Chinese_PRC_CI_AS:Chinese_PRC是簡體中文字符集。 _CI(CS) 是否區分大小寫,CI不區分,CS區分。
_AI(AS) 是否區分重音,AI不區分,AS區分。 NOT NULL:列非空。
NULL:列空。 GO:執行上述SQL語句。
至于如何學好SQL,個人認為:關鍵就是認真看書,然后搭建一個相應的環境,多學習多實踐就是了,肯定沒什么秘訣的!。
轉載請注明出處華閱文章網 » sqlserver的語句