企画倒れのSQL
MySQL 4,0 系はサブクエリーつかえんのか。。 orz
WP でみなさんからいただいたコメント/トラックバック集計から、リンク集をつくる・・・というプラグインを考えていたのですが、せっかく書いた SQL が企画倒れでした。 とほほ。
MySQL 4.1 以降のかたはうごくと思うので遊んでください。 🙂
- SELECT
- all_comments.author,
- all_comments.author_url,
- all_comments.hostname,
- MAX(all_comments.comment_count) as comment_count,
- MAX(all_comments.trackback_count) as trackback_count,
- (comment_count+trackback_count) as all_count
- FROM
- ((SELECT
- comment.comment_author as author,
- comment.comment_author_url as author_url,
- count(comment.comment_author) as comment_count,
- '' as trackback_count,
- SUBSTRING_INDEX(REPLACE(comment.comment_author_url, 'http://', ''), '/', 1) as hostname
- FROM
- wp_comments as comment
- WHERE
- comment_approved = '1' AND
- comment_author_url <> '' AND
- comment_type = ''
- GROUP BY
- hostname
- ORDER BY
- comment.comment_count desc,
- hostname)
- UNION
- (SELECT
- trackback.comment_author as author,
- trackback.comment_author_url as author_url,
- '' as comment_count,
- count(trackback.comment_author) as trackback_count,
- SUBSTRING_INDEX(REPLACE(trackback.comment_author_url, 'http://', ''), '/', 1) as hostname
- FROM
- wp_comments as trackback
- WHERE
- trackback.comment_approved = '1' AND
- trackback.comment_author_url <> '' AND
- trackback.comment_type = 'trackback'
- GROUP BY
- hostname
- ORDER BY
- trackback.comment_count desc,
- hostname)) as all_comments
- GROUP BY
- all_comments.hostname
- ORDER BY
- all_count desc
#行番号は削除してください。
実は コメント+トラックバックの合計がバグっているのですが、、なんでだろう。
つくるとしたら PHP のメモリでサマルしかないかな~。 良い案思いついたかたは教えてください。 😛
From: kohaku - 2006/11/5 Sunday (Comment)
あらら。。。
期待してただけに残念です。:neutral:
また天から降ってきたら御願いします。 😛
From: ひろまさ - 2006/11/5 Sunday (Comment)
うちとチームロリポさんがだめなんですよね。。(笑)
From: おで(Odyssey) - 2006/11/5 Sunday (Comment)
σ(´・ω・`) チームロリポ。。。。
へむてるかちかっぱにしようかなー・・・。
でも9月に1年分払っちゃったんだよなー。
From: ひろまさ - 2006/11/5 Sunday (Comment)
ぼくもそろそろ更新です。。 とりあえずミニマムスペックでいたほうが、プラグイン作るときに都合がいいのでこのままでいこうかな。 😎