如何添加索引
1.在表創建時加
create database table1{
id primary key not null,
index|keys 索引名 (id)
}
2.在已經創建好的表中添加
create index|keys 索引名 on 表名 (字段名)
3.如何使用索引 一般是用添加了索引的字段作爲where的條件
如:select * from tables where id = 3;(ID是作爲索引字段)
一般的我們可以將字段當成是變量來進行運算,同時在sql中 比較判斷的結果爲0和1 ture 爲1 false爲0
比如select scroe>60 from stu; 則結果會是0和1
select sum(scroe>60) from stu;這樣我們就可以知道全班及格人數了 因爲每執行一次scroe>60就會返回0或1 因此只要對此求和就行
4.where和having的區別
where不能用別名來做判斷 having可以使用別名
比如:select (mark_price - price) as 'cj' from marker having cj > 200; 如果使用where 則會報錯
mysql的優化-------------
一、表的設計合理性
三範式的表能用聯表推導的字段就不要都寫在一個表上
如何檢查出 查詢比較慢的sql語句
定位慢查詢
測試數據生成 利用存儲過程 藉助自定義函數來生成
mysql定義函數
mysql定義存儲過程
set long_query_time = 3;先設置mysql認定慢查詢的時間爲3秒 默認是10秒
這樣 只要sql語句超過了3秒的都會被記錄到日誌中 從而可以優化語句