mysql處理海量資料時的一些優化查詢速度方法

2021-07-31 15:36:32 字數 713 閱讀 6191

查詢時應盡量避免全表掃瞄,避免全表掃瞄首先應考慮在where和order by設計的列上建立索引。

具體實現的點兒如下:

1:在where字句中應盡量避免使用!=或者<>、null值判斷、使用or連線條件、前置百分號、in和not in、使用引數、對欄位進行表示式操作、對欄位進行函式操作等,否則將不使用索引改為使用全表掃瞄。

ps:索引並不是越多越好,索引在提高select效率的同時,也降低了insert和update的效率(insert和update可能會重建索引),乙個表中的索引最好不要超過6個,不常用的列盡量不要建立索引。

2:在任何地方都不要使用select * from tablename,開發過程中用具體的字段代替「*」,不要返回一些根本使用不到的字段。

3:避免頻繁建立和刪除臨時表,以減少系統表資源的消耗。

4:盡量避免向客戶返回大資料量,資料量過大時應考慮相應需求是否合理。

5:盡量避免大事務操作,提高系統併發能力。

6:盡可能使用數字型字段,數字型字段相比字元型字段只需要比較一次就夠了。

7:能用between and就不用in,

能用distinct就不用group by,能用union all就不用union。

參考:mysql查詢的效能優化

numpy處理資料時一些常用函式

我們以iris.data.舉例,下面是iris資料集 取前6行 其中前4列是特徵,第5列是類別,有三類,分別是iris setosa,iris versicolor和iris virginica iris.data 5.1,3.5,1.4,0.2,iris setosa 4.9,3.0,1.4,0....

資料預處理時的一些基本操作

1 刪除某一列 df.drop 列名,axis 1 刪除列 inplace true 對原dataframe進行操作 2 判斷哪一列有空值 df.isnull any 如果有空值 則該列返回true,否則返回false 3 刪除值含空的資料 df.dropna 引數how預設為any 如果該行資料有...

資料的一些處理

1.int curr pfind parr pstart 指標相減確定下標 printf n curr d curr 同型別相減,自動除以型別 2.寬字元 0佔2個位元組,在寬字元中1個字元占用2個位元組,窄字元 0佔1個位元組,在窄位元組中1個字元占用1個位元組。寬字元只不過是用了乙個大盒子來存放...