2009-07-02 71 views
0

再次導致mySQL語法和查詢結構問題。我目前正在做這個查詢罰款: -mySQL - 使用另一個table.field中的數據來確定查詢中的結果

SELECT DATE_FORMAT(`when`, '%e/%c/%Y')date 
    , COUNT(`ip`) AddressCount 
    FROM `metrics` 
WHERE `projID` = '$projID' 
GROUP BY DATE(`when`) 

這工作正常,找到具體數量的IP地址的命中。然而,我現在試圖做的是爲所有用戶的項目提供一個整體。但是,該表不包含用戶的ID,項目表就是這樣。他們通過'projID'鏈接。所以,我問的是如何將兩者聯繫起來以獲得結果。

I.e. SELECT the bumph I want FROM metrics WHERE(ANOTHER TABLE's)userID ='1'或者,WHERE項目表中列出的任何projID's = 1。與用戶ID一起。

現在,直接加入似乎不是我的答案?我首先感到困惑。任何幫助宏大的讚賞。

回答

1

你想加入這裏。因爲我不知道你的專欄名稱,所以我不會得到這個100%的正確答案,但是這是一個刺戳。

如果您發佈有關您的兩個表格及其列的更多信息將會有所幫助。

SELECT DATE_FORMAT(m.`when`, '%e/%c/%Y')date 
    , COUNT(`ip`) AddressCount 
    , o.`userID` 
    FROM `metrics` m 
    LEFT JOIN `other_table` o 
    ON m.`userID` = o.`userID` -- you'll likely need to change this bit 
WHERE `projID` = '$projID' 
    AND o.`userID` = [Value] -- optional 
GROUP BY DATE(`when`) 
1

只要加入他們?如:

SELECT DATE_FORMAT(`when`, '%e/%c/%Y')date 
    , COUNT(`ip`) AddressCount 
    FROM `metrics`, project_user_association_table puat 
WHERE `projID` = puat.projId 
    AND puat.userId = 123456789 
GROUP BY DATE(`when`) 

這使用表project_user_accociation,其中有一個領域的用戶和項目(使用戶項目是許多一對多在我的例子)

相關問題