PS1のギャルゲー(恋愛ゲーム)を評価が高い順で表示します。
画像をクリックするとAmazonのページに飛びます。
詳細:
中央値は平均値と比べて極端な数値の偏りの影響を受けにくいという特徴があります。
そして中央値と平均値の差が正の方向に大きいほど数値が大きい方に偏り、負の方向に大きいほど小さい方に偏ります。
なので第一ソートは中央値、第ニソートは中央値 - 平均値にしました。
他機種で同じタイトルがあった場合、データ数が一番多い機種の中央値、平均値、標準偏差を持ってきたかったのですが難しそうなのでひとまずパス。
まだ評価が付いていないゲームは最下部にあります。
画像取得コードはこちらよりお借りました。
https://erogamescape.dyndns.org/~ap2/ero/toukei_kaiseki/usersql_exec.php?sql_id=1566
検索ワード:
PlayStation, 恋愛シミュレーション, おすすめ, コンシューマ, 男性向け, 女性向け
SELECT CHR(60)||'a href='||CHR(34)||'http://www.amazon.co.jp/exec/obidos/ASIN/'||(SELECT al.asin FROM amazon_game AS ag, amazonlist AS al WHERE ag.asin = al.asin AND ag.game = foo.id AND al.mediumimage IS NOT NULL ORDER BY al.asin LIMIT 1)||'/erogamescape-22'||CHR(34)||' target='||CHR(34)||'_blank'||CHR(34)||CHR(62)||CHR(60)||'img src='||CHR(34)||foo.mediumimage||CHR(34)||CHR(62)||CHR(60)||'/a'||CHR(62) AS 画像
, a.gamename タイトル
, a.genre ジャンル
, COALESCE(b.median, 0) 中央値
, COALESCE(b.average, 0) 平均値
, round((COALESCE(b.median, 0) - COALESCE(b.average, 0))::numeric, 1) 中央値-平均値
, a.stdev 標準偏差
, b.count データ数
, b.brandname ブランド名
, a.sellday 発売日
FROM (SELECT gl.*
, COALESCE(
(/*Amazon*/SELECT al.largeimage FROM amazon_game AS ag, amazonlist AS al WHERE ag.asin = al.asin AND ag.game = gl.id AND al.mediumimage IS NOT NULL ORDER BY al.asin LIMIT 1)
, (/*DMM*/'http://pics.dmm.co.jp/'||gl.dmm_genre||'/game/'||gl.dmm||'/'||gl.dmm||'p'||CASE WHEN gl.dmm_genre_2 = 'doujin' THEN 'r' ELSE 'l' END||'.jpg')
, (/*DLsite*/'http://img.dlsite.jp/modpub/images2/work/'||CASE WHEN gl.dlsite_domain = 'pro' THEN 'professional' WHEN gl.dlsite_domain = 'pro2' THEN 'professional' ELSE 'doujin' END||'/'||left(gl.dlsite_id, 2)||right('000000'||(ceil(right(gl.dlsite_id, 6)::real / 1000) * 1000)::text, 6)||'/'||gl.dlsite_id||'_img_main.jpg')
, (/*DiGiket*/'http://img.digiket.net/cg/64/'||gl.digiket||'_1.jpg')
, (/*Gyutto*/'http://gyutto.com/data/item_img/'||left(gl.gyutto_id, -2)||'/'||gl.gyutto_id||'/'||gl.gyutto_id||'.jpg')
, (/*Getchu*/'http://image.getchu.com/afimage/'||floor(gl.comike::real / 1000)::text||'000/'||gl.comike||'/afimg_'||gl.comike||'_160.jpg')
, '') AS largeimage
, COALESCE(
(/*Amazon*/SELECT replace(al.mediumimage, '_SL160_', '_SL200_') FROM amazon_game AS ag, amazonlist AS al WHERE ag.asin = al.asin AND ag.game = gl.id AND al.mediumimage IS NOT NULL ORDER BY al.asin LIMIT 1)
, (/*DMM*/'http://pics.dmm.co.jp/'||gl.dmm_genre||'/game/'||gl.dmm||'/'||gl.dmm||'p'||CASE WHEN gl.dmm_genre_2 = 'doujin' THEN 't' ELSE 's' END||'.jpg')
, (/*DLsite*/'http://img.dlsite.jp/modpub/images2/work/'||CASE WHEN gl.dlsite_domain = 'pro' THEN 'professional' WHEN gl.dlsite_domain = 'pro2' THEN 'professional' ELSE 'doujin' END||'/'||left(gl.dlsite_id, 2)||right('000000'||(ceil(right(gl.dlsite_id, 6)::real / 1000) * 1000)::text, 6)||'/'||gl.dlsite_id||'_img_sam.jpg')
, (/*DiGiket*/'http://img.digiket.net/cg/64/'||gl.digiket||'_2.jpg')
, (/*Gyutto*/'http://gyutto.com/data/item_img/'||left(gl.gyutto_id, -2)||'/'||gl.gyutto_id||'/'||gl.gyutto_id||'_p_m2.jpg')
, (/*Getchu*/'http://image.getchu.com/afimage/'||floor(gl.comike::real / 1000)::text||'000/'||gl.comike||'/afimg_'||gl.comike||'_120.jpg')
, '') AS mediumimage
FROM gamelist AS gl
) AS foo
INNER JOIN gamelist a
ON a.id = foo.id
INNER JOIN toukei_temp_table b
ON b.game_id = foo.id
WHERE foo.model = 'PS'
ORDER BY 中央値 DESC
, (COALESCE(b.median, 0) - COALESCE(b.average, 0)) DESC