0

どうすればこのような作品を作ることができますか?

INSERT INTO age.page(domain,title_count,youtube_count,ipaddress,updated)
SELECT * FROM 
(
    SELECT domain,
    COUNT(domain) AS titlecount,
   (SELECT COUNT(*) FROM table2 WHERE title = table1.title) AS YoutubeCount, ipaddress
    NOW() AS timeNow
    FROM table1
    GROUP BY domain
    ORDER BY title DESC
) a;

サブクエリを使用して別のテーブルのカウントを取得したいのですが、メインクエリから同じフィールドを使用します。

これを実行したい理由は、1つだけではなく2つのクエリを実行する必要がないためです。

4

1 に答える 1

1

これCOUNTをサブクエリで実行JOINしてから、最初のテーブルで実行できます。

INSERT INTO age.page(domain, title_count, youtube_count, ipaddress, updated)
SELECT * FROM 
(
    SELECT 
      domain,
      COUNT(domain) AS titlecount,
      t2.titlecount AS YoutubeCount, 
      ipaddress,
      NOW() AS timeNow
    FROM table1
    INNER JOIN
    (
       SELECT title, COUNT(*) Titlecount
       FROM table2 
       GROUP BY title
    ) AS t2 ON t2.title = table1.title   
    GROUP BY domain
    ORDER BY table1.title DESC
) a;
于 2013-03-19T19:59:36.917 に答える