ホームページ  >  記事  >  バックエンド開発  >  3 つのテーブルの結合クエリに関するソリューションのアイデア

3 つのテーブルの結合クエリに関するソリューションのアイデア

WBOY
WBOYオリジナル
2016-06-13 13:45:251010ブラウズ

3つのテーブルの接続クエリ
a b cの3つのテーブルのうち、

接続する際、テーブルaをベーステーブルとしてクエリ文を書かなければならないのですが、書き方が分かりません、

now 問題は、テーブル A に対応する ID が他のテーブルにない場合、クエリは失敗するということです。

専門家のアドバイスをお願いします。

次の 2 つの SQL ステートメント。そのうちの 1 つは元プログラマーによって残されました。
最後のものは私によって修正されました。
しかし、問題もあります。

質問は以下の通りです。

これはプログラマが残したものです。

CSS コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->

SELECT * , SUM( b.nums ) AS addsums, SUM( c.nums ) AS clicksums
FROM dx_app_info a
INNER JOIN  `dx_app_add_count` b
INNER  JOIN  `dx_app_click_count` c ON a.app_id = b.app_id
AND a.app_id = c.app_id
WHERE app_name LIKE  '%人体生物钟在线查询%'
GROUP BY a.app_id




問題は、b または c に対応する ID がない場合、クエリが失敗することです。この結果は見たくないものです。






SELECT * , SUM( b.nums ) AS addsums, SUM( c.nums ) AS clicksums
FROM dx_app_info a
INNER JOIN `dx_app_add_count` b
LEFT[color=#00FF00][/color] JOIN `dx_app_click_count` c ON a.app_id = b.app_id
AND a.app_id = c.app_id
WHERE app_name LIKE '%体内時計オンラインクエリ%'
GROUP BY a.app_id
LIMIT 0, 20

これは私が変更した SQL ステートメントです。
はクエリできます。しかし、実行時間は非常に長く、容認できません。

-----解決策--------------------------------
ははは、わかりました。
-----解決策---------
私も人間です...
------解決策------------------
「いいね!」はできるだけ避けてください
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。