2013-07-16 68 views
2

http://sqlfiddle.com/#!2/1a2df內連接到從行

我試圖通過計數SUM的MAX值(valid

優選結果選擇一列「PHOTO_NAME」的SUM選擇MAX值是「TEST5。 JPG」,而是嘗試小時後,我仍然無法弄清楚,

下面

是我以前的做法,但它不工作

SELECT photo_name FROM 
(
SELECT a.* 
    FROM test a 
    INNER JOIN 
    (
    SELECT *, SUM(valid) v 
    FROM test 
    WHERE page_id = 3 AND `valid` = 1 

    ) b ON MAX(b.v) 
)c 

請幫忙,

回答

0

像這樣的東西應該工作。它總結了valid列每張照片,令高到低的金額,然後將結果限制到最上面一行:

SELECT photo_name, SUM(valid) AS sum_valid 
FROM test 
GROUP BY photo_name 
ORDER BY sum_valid DESC 
LIMIT 1 
+0

謝謝你,它的工作原理 –