我正在嘗試查找可能從我的數據庫中丟失的數據。我有三個表,這是其中的一部分。第一個是事件表,第二個是子事件表,第三個是來自子事件的子事件的個人數據。需要複雜的MySql查詢幫助
我想要做的是: 對於每個事件查找與其關聯的子事件,如果子事件具有字段tfile設置然後忽略它,如果它不然後看個人'數據。如果有匹配的記錄,則輸出到列表中。
這裏是我想會的工作,但不正確的:
select event.*, subevent.* from event.id
join subevent on event.id = subevent.eid
join pdata on subevent.subid = pdata.subid
where subevent.textfile = ''
and Count(pdata.subid) = 0;
編輯:從用戶添加代碼,使用真正的表名:
SELECT tb_event.*, cr_event.*
FROM tb_event
INNER JOIN cr_event ON tb_event.id = cr_event.eid
INNER JOIN searchable_data ON cr_event.id = searchable_data.race_id
WHERE cr_event.tfile = ''
GROUP BY cr_event.id
HAVING Count(searchable_data.race_id) = 0
其他信息,我相信問題在於searchable_data中有多少項目。它似乎沒有找到零(我知道存在)。
按照尼克的建議,我通過
SELECT tb_event.*, cr_event.id
FROM tb_event
INNER JOIN cr_event ON tb_event.id = cr_event.eid
INNER JOIN searchable_data ON cr_event.id = searchable_data.race_id
WHERE cr_event.tfile = ''
GROUP BY tb_event.id, tb_event.ename, tb_event.ecity, tb_event.eplace, tb_event.elocation, tb_event.zip, tb_event.day, tb_event.year, tb_event.etime, tb_event.logo, tb_event.remail, tb_event.descr, tb_event.link, tb_event.reg, tb_event.rname, tb_event.created_by, cr_event.id
HAVING Count(searchable_data.race_id) = 0
我已經嘗試了約一個小時,以獲得這一個查詢的工作加到列該組。任何人有任何其他想法?
謝謝衛斯理,我試圖做同樣的事情,並沒有想出來。 –
這個最近的查詢的輸出是什麼? – NickHeidke
0行返回。 –