Sqlserver 資料庫基本查詢

來源:互聯網
上載者:User

 

                                Sql Server 基礎文法

 

-- 查看資料表

select * from Student

 

-- 使用Sql查詢資料

 

--1、查詢表中所有類容

Select * From TableName

 

--2、查詢表中指定欄位類容

Select ColumnName,…, From TableName

 

Select stuName,stuNo,stuSex From stuInfo

 

--3、帶Where條件的查詢

Select *|ColumnName From TableName Where condition

 

select * From stuInfo where stuSex='女'

 

--4、帶排序的查詢(Order By ColumnName)

-- 文法: Select *|ColumnName From TableName Order By ColumnName Desc|Asc

 

Select * From stuInfo Order By stuAge,stuSeat desc

 

-- 5、選擇指定數量的記錄,通常配合order By使用

-- 文法: Select Top num *|ColumnName From TableName 

-- 文法: Select Top num *|ColumnName From TableName Order By Desc|Asc

Select Top 2 * From stuInfo Order By stuAge Desc

 

-- 6、分組查詢 Group By

-- 分組查詢中包含的列必須包含在彙總函式或 GROUP BY 子句中

Select * From stuInfo

Select stuSex, Max(stuAge) As '平均年齡' From stuInfo Group By stuSex

 

--7、對分組後的結果進行過濾

-- having(相當於Where)

Select * From stuInfo

Select stuSex, Avg(stuAge) As '平均年齡' From stuInfo Group By stuSex having Avg(stuAge)>20

 

--8、Group By 配合 Where 使用

Select * From stuInfo

Select stuSex, Avg(stuAge) As '平均年齡' From stuInfo where stuAge > 18 Group By stuSex having Avg(stuAge)>20 

 

 

-----------------------------------------------------------

--使用Sql插入資料

--1、不指定列插入資料

文法:Insert Into TableName Values(值列表)

Insert Into stuInfo Values('小八','S25311','男',24,'北京')

 

Select * from stuInfo

 

-- 2、指定列名對資料插入

--文法:Insert Into TableName(列名列表) Values(值列表)

--注意:列名列表順序可自己指定,但值列表的順序應該和列名列表相同。

 

Insert Into stuInfo(stuName,stuNo,stuSex,stuAddress,stuAge) Values('小九','S25312','男','上海',25)

 

select * from stuInfo

 

--3、一次插入多條記錄

--1) Insert Into TableName(列名類表) Select…From  插入到現存的表中

--注意:列名的資料類型,個數必須相同

 

Insert Into stuInfoCopy(stuName,stuNo,stuSex,stuAge,stuSeat,stuAddress)

Select * From stuInfo

 

Select * From stuInfoCopy

 

--3、一次插入多條記錄

--2) Select 列名列表 Into 新表名 From SourceTable 插入到現存的表中

--注意:列名的資料類型,個數必須相同,新表必須不存在

Select Identity(int,1,1) As 'ID',stuName,stuNo,stuSex,stuAge,stuAddress 

Into #temp

From stuInfo

 

select * from #temp

 

--3、一次插入多行記錄

--3)使用Union合并資料行

Insert #temp(stuName,stuNo,stuSex,stuAge,stuAddress)

Select '寶貝','S25318','男',22,'湖北' Union

Select '寶貝2','S25318','女',23,'湖南' 

 

select * from #temp

 

 

--4、更改資料

--文法: Update TableName Set ColumnName=值 where Condititon

 

Update #temp Set stuName = '寶貝3' Where stuName = '寶貝'

 

Select * from #temp

 

--5刪除資料

-- 文法: Delete From TableName Where Condition

Delete From #temp Where Id=8

 

Select * From #temp

 

--5刪除資料

--文法: Truncate Table TableName(在刪除表中所有資料時,比Delete效率高,但不能

--刪除包含外鍵約束的表

 

Truncate Table stuMarks

 

 

-- Where 條件種類

--1、ColumnName Between 低值 And 高值

Select * from stuInfo Where stuAge Between 20 And 25

 

--2、And Or Not(與,或,非)

 

--3、In(值列表)

Select * from stuInfo Where stuAge IN (21,25)

 

--4、Like(模糊查詢)

-- % 表示任意數量字元 _ 一個字元 [] 一個範圍 [^]不在某個範圍

Select * from stuInfo Where stuName like '小%'

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.