在不開啓慢查詢的狀況下,根據須要查看當前接口/方法執行過程當中每一個sql的執行時間php
以下:mysql
定義一個開始執行時的時間變量A,sql執行完成後,定義一個執行結束時間變量B,而後根據兩個變量做差。php 中 microtime() 函數返回當前 Unix 時間戳的微秒數。sql
根據具體執行時間而後有針對的進行優化。數據庫
注:該結果能夠選擇輸出到頁面,也能夠寫入指定文件函數
mysql 模糊搜索 LIKE concat( '%',s.station_id, '%')優化
SELECT
s.name,
COUNT(r.request_log_id) AS NumberOfRequests
FROM
station AS s
LEFT JOIN request_log AS r
ON r.requested LIKE concat( '%',s.station_id, '%')
GROUP BY s.name接口
將數據庫的某一字段值拆分紅多列string
update el_job as t1,
(select job_id,substring_index(t3.range_month,'-', 1) AS min_s,substring_index(t3.range_month,'-', -1) AS max_s from el_job as t3) as tb2
set t1.min_mon = tb2.min_s,t1.max_mon = tb2.max_s
where t1.job_id=tb2.job_idio