-1

私が扱っているのは、構造が古く、設計データベースが緩すぎて複雑です。悲しいことに、私はそれをしなければなりません。:(

古い方法は、PHP を使用してテーブルから各情報を照会していました。次に、joinで再コーディングしました。しかし、大きな問題が発生しました。これらの情報を照会するには、ほぼ 1 分かかります (場合によってはそれ以上)。

これが私のコードです:

select *, car_db.id as cid, tbl_province.province_name as prov_name,
config_car_color.color_title as clr_title, 
config_car_color.description as clr_desc, 
car_viewer.vwr_id as viewers 
from car_db 
inner join tbl_province on tbl_province.province_code=car_db.prov 
inner join config_car_color on config_car_color.id=car_db.color 
inner join car_viewer on car_viewer.vwr_cid=car_db.id 
where car_db.tid='$_tid'

このコードの最新のクエリから、3.37 秒かかりました。ただし、通常、コードの実行には少なくとも 30 秒かかります。

質問は、これらの行をより速く処理するための最良の方法を教えてください.

4

2 に答える 2

1

まず第一に、ここで冗長性が発生していることがわかります。* はすべてのテーブルからすべてを選択するため、これらの列の一部を再度選択しています。それらのテーブルから必要な列だけを選択するようにしてください。

于 2013-04-25T15:04:08.407 に答える