ホームページ >バックエンド開発 >PHPチュートリアル >SQL文、複数テーブルクエリ、1対多ページングについて教えてください。

SQL文、複数テーブルクエリ、1対多ページングについて教えてください。

WBOY
WBOYオリジナル
2016-06-13 11:56:401041ブラウズ

SQL ステートメント、複数テーブル クエリ 1 対多ページングについて質問する
3 つのテーブル

トピック テーブル、フィールド to_id to_title

ナレッジ ポイント テーブル タグ、フィールド t_id t_title

アソシエーション テーブルのリレーション、フィールド to_id t_id

各質問には複数の知識ポイントを含めることができます


現在の Web インターフェイスには、ページごとに 10 個の質問が含まれる検索ボックスがあり、ユーザーは複数の質問を選択できますナレッジ ポイント ポイントで発生した問題は、データが重複していることです

<br />select topic.to_id,topic.to_title from topic,relation where ( topic.to_id = relation.to_id )  and (t_id in (1,2,3)); <br />



現在の状況では、ナレッジ ポイント 1、2、および 3 がすべて to_id に対応している場合、 1 を選択すると、同じ問題が 3 つ表示されます。ただし、繰り返しを削除すると、1 ページあたり 10 項目に反することになります。関連する SQL ステートメントを先輩方に質問したいと思います。 ! !
------解決策---------
select unique( topic.to_id,topic.to_title ) from topic,relation, tag where (topic.to_id = relationship.to_id) and (t_id in (1,2,3)) 制限 0,10;

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