php - mysql 一张表根据另一张表的字段数量排序查询
滿天的星座
滿天的星座 2017-05-16 12:58:36
0
2
486

现在有一个小说信息表A(只是小说的汇总信息),小说的章节信息会放在小说id%100的那张表B上(比如A表小说id为1245,那它的章节数据就会放在chapter_45这张表上,小说信息会以id随机分布在100张上),现在我想查寻出以B表上章节数量(count(*))倒序排列的A表小说信息,我写了sql语句:
select i.id,i.siteid,count(*) as s from ptcms_novelsearch_info as i join ptcms_novelsearch_chapter_i.id%100 as c on c.novelid = i.id and c.siteid=i.siteid GROUP BY i.id order by s desc limit 20;
会报%100语法错误的错,因为章节表没法确定(有100个小说章节信息表),求大神解答如何实现这一需求

滿天的星座
滿天的星座

全員に返信(2)
迷茫

これは、インスタンスのデータベースにアクセスして 100 個のテーブルの情報を確認するだけです。どのテーブルに必要なデータが保存されているかがわからないため、すべてのテーブルを結合する必要があります。これは明らかに不合理であるため、ビジネス モデルではテーブル分割を使用する必要があります。たとえば、mycat を使用して、テーブル A と B を小説 ID に従ってテーブルに分割する必要があります。 mycat を選択し、A.id で A join B を直接選択します。 =B.id

だけです。
いいねを押す +0
我想大声告诉你

テーブル名は変数であるため、SQL ステートメントを結合するには動的 SQL を使用する必要があります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!