mysql高階用法

2021-08-21 08:51:24 字數 1871 閱讀 2045

1.建立檢視

create table `weather` (

`id` int(11) not null auto_increment,

`date` char(24) default null,

`week` char(24) default null,

`img` char(128) default null,

`temperature` char(24) default null,

`weather` char(24) default null,

`wind` char(24) default null,

primary key (`id`)

) engine=innodb auto_increment=22 default charset=utf8

建立檢視用法

create view first_view(id,`date`,`week`,img) as select id,`date`,`week`,img from weather
這裡是列名對應列名,查詢表資訊

檢視很簡單,主要是為了簡便sql查詢,而且檢視查詢出來的資料可以和表進行關聯查詢

刪除檢視 drop view 檢視名

2.索引

注意點:

組合索引查詢的各種場景:

組合索引 index (a, b, c)

下面條件將不能用上組合索引查詢:

下面條件將能用上部分組合索引查詢:

組合索引排序的各種場景:

組合索引 index(a, b)

下面條件不能用上組合索引排序:

索引合併的簡單說明:

select * from tb where a=5orb=6

索引應該建在選擇性高的字段上(鍵值唯一的記錄數/總記錄條數),選擇性越高索引的效果越好、價值越大,唯一索引的選擇性最高;

組合索引中字段的順序,選擇性越高的字段排在最前面;

where條件中包含兩個選擇性高的字段時,可以考慮分別建立索引,引擎會同時使用兩個索引(在or條件下,應該說必須分開建索引);

不要重複建立彼此有包含關係的索引,如index1(a,b,c) 、index2(a,b)、index3(a);

組合索引的字段不要過多,如果超過4個字段,一般需要考慮拆分成多個單列索引或更為簡單的組合索引;

最後需要提醒的是,不要濫用索引。因為過多的索引不僅僅會增加物理儲存的開銷,對於插入、刪除、更新操作也會增加處理上的開銷,而且會增加優化器在選擇索引時的計算代價。

因此太多的索引與不充分、不正確的索引對效能都是毫無益處的。一言以蔽之,索引的建立必須慎重,對每個索引的必要性都應該經過仔細分析,要有建立的依據。

建立索引

create index first_indexet on weather(`date`)
查詢索引情況

show index from weather
這裡主鍵自動建立索引

3.儲存過程

create

procedure

儲存過程名稱( 引數的種類1引數

1資料型別

1[,引數的種類2引數

2資料型別

2])

begin

處理內容

end

mysql查詢高階用法

聯合查詢 select a.b.adress b.name from a b where a.sbno b.cdid order bya.sbno a.stime select a.a id,a.a name,b.b name from a a,b a where a.b id b.b id 聯合查...

mysql的高階用法 mysql的一些高階用法

軟體安裝 裝機軟體必備包 sql是structured query language 結構化查詢語言 的縮寫。sql是專為資料庫而建立的操作命令集,是一種功能齊全的資料庫語言。在使用它時,只需要發出 做什麼 的命令,怎麼做 是不用使用者考慮的。sql功能強大 簡單易學 使用方便,已經成為了資料庫操作...

python高階用法 Python高階用法

python高階用法 三元表示式 x 10 y 20 print x if x y else y x 100 y 20 print x if x y else y 列表推導式和生成器 列表推導式 print i for i in range 10 print i 2 for i in range 1...