日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

SQL – 2.SQLServer的管理 + 3.SQL基础1 + 4.SQL基础2

發布時間:2025/3/8 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL – 2.SQLServer的管理 + 3.SQL基础1 + 4.SQL基础2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SQLServer的管理

  • 常用字段類型:bit(可選值0、1)、datetime、int、varchar、nvarchar(可能含有中文用nvarchar)
  • varchar、nvarchar 和char(n)的區別: char(n)不足長度n的部分用空格填充。Var:Variable,可變的。

?

?

?


SQL語句入門

  • SQL語句中字符串用單引號
  • SQL語句是大小寫不敏感的。
  • 創建表、刪除表不僅可以手工完成,還可以執行SQL語句完成,在自動化部署、數據導入中用的很多,

CREATE TABLE 表名稱

(

列名稱1 數據類型,

列名稱2 數據類型,

列名稱3 數據類型,

....

)

CREATE TABLE T_Person(Id int NOT NULL,Name nvarchar(50),Age int NULL)

Drop table T_Person1

  • 簡單的Insert語句。INSERT INTO T_Person(Id,Name,Age) VALUES(1,'Jim',20)
  • (*) SQL主要分DDL(數據定義語言)和DML(數據操作語言)兩類。Create TableDrop TableAlter Table等屬于DDLSelectInsertUpdateDelete等屬于DML

?

?


主鍵選擇-自動標識和GUID

SQLServer中兩種常用的主鍵數據類型:int(或bigint)+標識列(又稱自動增長字段);uniqueidentifier(又稱GuidUUID

SQLServer中生成GUID的函數newid(),.Net中生成Guid的方法:Guid.NewGuid(),返回是Guid類型。

? ?

?

?

?

?

?

?


數據更新(UPDATE 表名稱 SET 列名稱)

  • 更新一個列:UPDATE T_Person Set Age=30
  • 更新多個列: UPDATE T_Person Set Age=30,Name=‘tom’
  • 更新一部分數據: UPDATE T_Person Set Age=30 where Name=‘tom’,用where語句表示只更新Name是’tom’的行,注意SQL中等于判斷用單個=,而不是==。
  • Where中還可以使用復雜的邏輯判斷UPDATE T_Person Set Age=30 where Name=‘tom’ or Age<25,or相當于C#中的||(或者)
  • update Person1 set NickName=N'二十歲' where (Age>20 and Age<30) or(Age=80)
  • Where中可以使用的其他邏輯運算符:or、and、not、<、
    >、>=、<=、!=(或<>)等

?

?


數據刪除(DELETE FROM 表名稱 WHERE 列名稱 = 值)

  • 刪除表中全部數據:DELETE FROM T_Person
  • Delete只是刪除數據,表還在,和Drop Table不同。
  • Delete 也可以帶where子句來刪除一部分數據:
    DELETE FROM T_Person WHERE FAge > 20?

?

?


數據檢索(select)

  • 簡單的數據檢索 :SELECT * FROM T_Employee
  • 還可以檢索不與任何表關聯的數據:select 1+1;select newid();select getdate();

?

?


數據匯總(聚合函數的使用)

  • SQL聚合函數:MAX(最大值)、MIN(最小值)、AVG(平均值)、SUM (和)、COUNT(數量)
  • 大于25歲的員工的最高工資 :SELECT MAX(FSalary) FROM T_Employee WHERE FAge>25
  • 最低工資和最高工資:SELECT MIN(FSalary),MAX(FSalary) FROM? T_Employee

?

?


數據排序(order by)

  • ORDER BY子句位于SELECT語句的末尾,它允許指定按照一個列或者多個列進行排序,還可以指定排序方式是升序(從小到大排列,ASC)還是降序(從大到小排列,DESC)。
  • 按照年齡升序排序所有員工信息的列表:
    SELECT * FROM? T_Employee ORDER BY FAge ASC
  • 按照年齡從大到小排序,如果年齡相同則按照工資從大到小排序
    SELECT * FROM? T_Employee ORDER BY FAge DESC,FSalary DESC
  • ORDER BY子句要放到WHERE子句之后 :SELECT * FROM T_Employee WHERE FAge>23 ORDER BY FAge DESC,FSalary DESC

?

?


通配符過濾

  • 通配符過濾使用LIKE 。單字符匹配的通配符為半角下劃線“_”,它匹配單個出現的字符。以任意字符開頭,剩余部分為“erry” :
    SELECT * FROM T_Employee WHERE FName LIKE '_erry'
  • 多字符匹配的通配符為半角百分號“%”,它匹配任意次數(零或多個)出現的任意字符。 “k%”匹配以“k”開頭、任意長度的字符串。檢索姓名中包含字母“n”的員工信息 :
    SELECT * FROM T_Employee WHERE FName LIKE '%n%'

?

?


空值處理

  • 數據庫中,一個列如果沒有指定值,那么值就為null,這個null和C#中的null,數據庫中的null表示“不知道”,而不是表示沒有。因此select null+1結果是null,因為“不知道”加1的結果還是“不知道”。
  • SELECT * FROM T_Employee WHERE FNAME=null ;?
    SELECT * FROM T_Employee WHERE FNAME!=null ;
    都沒有任何返回結果,因為數據庫也“不知道”。
  • SQL中使用is nullis not null來進行空值判斷:
    SELECT * FROM T_Employee WHERE FNAME is null ;
    SELECT * FROM T_Employee WHERE FNAME is not null ;

?

?


多值匹配

  • SELECT FAge,FNumber,FName FROM T_Employee WHERE FAge IN (23,25,28)
  • 范圍值:SELECT * FROM T_Employee WHERE FAGE>=23 AND FAGE <=27 ;
    SELECT * FROM T_Employee WHERE FAGE BETWEEN 23 AND 27 ;

總結

以上是生活随笔為你收集整理的SQL – 2.SQLServer的管理 + 3.SQL基础1 + 4.SQL基础2的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。