2013-11-14 331 views
0

我需要做的是獲取與'starName'對應的所有'date'列表。我已經加入了兩張表,但我無法弄清楚如何搜索聯合表中的'starName'。mysql兩個表,3列相關查詢

下面是該查詢我到目前爲止:

SELECT date, 
     COUNT(*) 
    FROM Scans, 
     Targets 
WHERE Scans.idTarget = Targets.id 
GROUP BY date; 

這裏是我的表:

Targets 
    | id | starName | more columns.... | 
    ----------------- 
    | 1 | WHITE | 
    | 2 | IOT CAS | 
    | 3 | 21 ALP | 

    Scans 
    | date | idTarget | more columns.... | 
    ------------------- 
    | 1-1 | 1  | 
    | 3-6 | 3  | 
    | 11-1 | 2  | 

感謝您的幫助。

+0

您正在尋找一個特定starName? – Joe

回答

0
SELECT date,COUNT(*) 
FROM Scans, Targets 
WHERE Scans.idTarget = Targets.id 
AND targets.starName like '%21%' --This is the line you need or something like it 
GROUP BY date; 
0
SELECT 
    s.date 
FROM 
    Scans AS s, Targets AS t 
WHERE 
    s.idTarget = t.id AND 
    t.starName = 'WHITE' 
0

您只需將其添加到您的WHERE條款。

所以你必須是這樣的:

WHERE 
     Scans.idTarget = Targets.id 
     AND Targets.startName = <whatever>