這是我的查詢MySQL查詢不會運行更快
SELECT `tbl_user`.`file_id` , `tbl_user`.`folder_id` , `tbl_user`.`user_id` , `tbl_user`.`fathername` , `tbl_user`.`investor_type` , `tbl_user`.`user_name` , `account_id` , `user_witness_id` , `visible` , sum(tbl_user_payment.user_amount) AS amt, `tbl_user_payment`.`trans_type`
FROM (
`tbl_user`
)
LEFT JOIN `tbl_user_payment` ON `tbl_user`.`user_id` = `tbl_user_payment`.`user_id`
LEFT JOIN `tbl_user_stamp` ON `tbl_user_stamp`.`user_id` = `tbl_user_payment`.`user_id`
WHERE `tbl_user`.`visible` = '1'
AND `tbl_user`.`user_name` LIKE '%1%'
OR `tbl_user`.`file_id` LIKE '%1%'
OR `tbl_user`.`folder_id` LIKE '%1%'
OR `tbl_user`.`fathername` LIKE '%1%'
OR `tbl_user`.`nic` LIKE '%1%'
OR `tbl_user`.`email` LIKE '%1%'
OR `tbl_user`.`city` LIKE '%1%'
OR `tbl_user`.`phone` LIKE '%1%'
OR `tbl_user`.`bank_account` LIKE '%1%'
GROUP BY `tbl_user`.`user_id`
我已經索引的所有類似值,但仍是我的查詢需要說不上2秒,我不知道它爲什麼這樣做。
我的本地系統上它需要約2秒第一次,然後它會是
但現場服務器也不會去小於2秒
能有人plz幫助後,需要大約0.002秒我
和recods只在用戶表和user_stamp表1000和1200說不上在user_payment表
Thankx
你真的需要所有'LIKE'語句嗎?與'='相比會更快,可以使用指數。 – Sirko
你是否也索引外鍵? –
使用LIKE減慢您的查詢... – Jetoox