SQL 文法之“增”、“刪”、“改”、“查”,sql文法
/*四、查1.普通查詢 文法:select <列名> from <表名> [where <查詢條件表達試>] [order by <排序的列 名>[asc或desc]] *//* 1).查詢所有資料行和列 例:select * from a 說明:查詢a表中所有行和*/select *from person
/* 2).查詢部分行列--條件查詢 例:select i,j,k from a where f=5 說明:查詢表a中f=5的所有行,並顯示i,j,k3列*/select ID FirstName ,LastName from person where ID>5
/* 3).在查詢中使用AS更改列名 例:select name as 姓名 from a where gender='男' 說明:查詢a表中性別為男的所有行,顯示name列,並將name列改名為(姓名)顯示*/select ID as Id號,FirstName as 姓名 from person
/* 4).查詢空行 例:select name from a where email is null 說明:查詢表a中email為空白的所有行,並顯示name列;SQL語句中用is null或者is not null 來判斷是否為空白行*/select * from person where City is null
/* 5).在查詢中使用常量 例:select name '北京' as 地址 from a 說明:查詢表a,顯示name列,並添加地址列,其列值都為'北京' 6).查詢返回限制行數(關鍵字:top ) 例1:select top 6 name from a 說明:查詢表a,顯示列name的前6行,top為關鍵字(oracle 中沒有top關鍵字 用rownum替代) select * from a where rownum<6 *//* 7).查詢排序(關鍵字:order by , asc , desc) 例:select name from a where grade>=60 order by desc 說明:查詢表中成績大於等於60的所有行,並按降序顯示name列;預設為ASC升序*/select ID,LastName from person where ID >5 order by ID desc/*2.模糊查詢 1).使用like進行模糊查詢 注意:like運算副只用語字串, 例:select * from a where name like '趙%' 說明:查詢顯示表a中,name欄位第一個字為趙的記錄 2).使用between在某個範圍內進行查詢 例:select * from a where age between 18 and 20 說明:查詢顯示表a中年齡在18到20之間的記錄 3).使用in在列舉值內進行查詢(in後是多個的資料) 例:select name from a where address in ('北京','上海','唐山') 說明:查詢表a中address值為北京或者上海或者唐山的記錄,顯示name欄位3.分組查詢 1).使用group by進行分組查詢 例:select studentID as 學員編號, AVG(score) as 平均成績 (注釋:這裡的score是列名) from score (注釋:這裡的score是表名) group by studentID 2).使用having子句進行分組篩選 例:select studentID as 學員編號, AVG from score group by studentID having count(score)>1 說明:接上面例子,顯示分組後count(score)>1的行,由於where只能在沒有分組 時使用,分組後只能使用having來限制條件,4.多表聯結查詢 1).內聯結 ①在where子句中指定聯結條件 例:select a.name,b.mark from a,b where a.name=b.name 說明:查詢表a和表b中name欄位相等的記錄,並顯示表a中的name欄位和表b中的 mark欄位
--刪除一條資料/*文法:delete from <表名> [where <刪除條件>] 例:delete from a where name='王偉華'(刪除表a中列值為王偉華的行) 注意:刪除整行不是刪除單個欄位,所以在delete後面不能出現欄位名*/select * from dbo.persondelete from dbo.person where FirstName='Carvin' select * from dbo.persondelete from person where ID=126
/*1.使用insert插入單行資料: 文法:insert [into] <表名> [列名] values <列值> 例:insert into Strdents (姓名,性別,出生日期) values ('王偉華','男','1983/6/15') 注意:如果省略表名,將依次插入所有列 2.使用insert,select語句將現有表中的 資料添加到已有的新表中 文法:insert into <已有的新表> <列名> select <原表列名> from <原表名> 例:insert into addressList ('姓名','地址','電子郵件')select name,address,email from Strdents 注意:查詢得到的資料個數、順序、資料類型等,必須與插入的項保持一致*/insert into dbo.person(ID,LastName,FirstName) Values(126,'Wade','DeDN') --插入一條資料 select * from person
--修改一條資料/*文法:update <表名> set <列名=更新值> [where <更新條件>]例:update addressList set 年齡=18 where 姓名='王偉華'*/update person set LastName='KKKK' where ID =5select *from person--單行注釋--多行注釋/* 1 Line 2 Line 3 Line*/
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。