ホームページ > バックエンド開発 > PHPチュートリアル > 3 つのテーブル、結合テーブル クエリ、この SQL をさらに最適化できますか?

3 つのテーブル、結合テーブル クエリ、この SQL をさらに最適化できますか?

WBOY
リリース: 2016-08-20 09:04:07
オリジナル
1095 人が閲覧しました

c.username、c.sex、c.attentions、c.fans、a.を選択id,a.content,a.isnum,a.times,a.turm,a.keep,a.comments,a.uid,b.mini,b.mednum,b.maxs
FROM (wb_userinfo c LEFT JOIN wb_weibo a ON c.uid = a.uid)
LEFT JOIN wb_picture b ON a.id = b.wid WHERE a.uid IN(SELECT follow FROM wb_follow WHERE fans = 27) OR a.uid = 27 ORDER BY a.times LIMIT 0,10;

返信内容:

c.username、c.sex、c.attentions、c.fans、a.を選択id,a.content,a.isnum,a.times,a.turm,a.keep,a.comments,a.uid,b.mini,b.mednum,b.maxs
FROM (wb_userinfo c LEFT JOIN wb_weibo a ON c.uid = a.uid)
LEFT JOIN wb_picture b ON a.id = b.wid WHERE a.uid IN(SELECT follow FROM wb_follow WHERE fans = 27) OR a.uid = 27 ORDER BY a.times LIMIT 0,10;

便利な場合は、代わりに Union を使用して試してみることを検討してください

リーリー

使用方法 explain 投稿された分析レポートを見て、ref の値と行の値、インデックスの使用状況などを確認してください。接続されたテーブルをクエリする場合、私の通常の提案は、単純なクエリに分割することです。

SQL に関する限り、最適化の余地はあまりありません。SQL をいくつかの単純な SQL に分割し、コードに最終的なビジネス ロジックを実装することをお勧めします。

追記: SQL に出現しないようにしてくださいor

結合を使用しないでください

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート