好的,我做了這個looooooong查詢。它工作完美的buuuuut需要15-30秒給我的結果...我不是一個SQL專家,所以我想問問是否有一種方法來提高MySQL的響應時間...也許這樣做超過1查詢或類似的東西。用大查詢改善mysql響應時間
PS:它是一個BIG數據庫,包含大公司的所有財務信息。
PS2:我使用php連接到mysql。
SELECT
aplicaciones.importe, facturas.cliente, facturas.porcenRUC,
facturas.porcenTB, facturas.codcmp, facturas.prefijo, facturas.numero,
clientes.vendedor, comisiones.ruc, comisiones.trb, recibos.prefijo as prefijoR,
recibos.numero as numeroR
FROM recibos, aplicaciones, facturas, clientes, comisiones
WHERE
(recibos.fechaAcrMax BETWEEN STR_TO_DATE('$dd', '%d/%m/%Y') AND
STR_TO_DATE('$hh', '%d/%m/%Y')) AND recibos.base = aplicaciones.base AND
recibos.identificador = aplicaciones.identificador AND
recibos.base = facturas.base AND
aplicaciones.aplica_a_identificador = facturas.identificador AND
facturas.cliente = comisiones.cliente AND
facturas.cliente = clientes.cliente
ORDER BY clientes.vendedor ASC
你有什麼樣的指標對這些表?這有助於大型查詢的速度。此外,您應該使用連接語法,JOIN TABLE2 ON TABLE2.ID = TABLE1.ID – Vulcronos
查詢使用隱式內部連接...我沒有表我只是有一個視圖,但我確信它有適當的指標。 –
你想檢查索引。這不是一個超級複雜的查詢,因此大部分工作都在where子句中,並將結果從數據庫傳回您的機器。 – Vulcronos