我打破了我對這個簡單的和平代碼,不想工作,我想不出任何其他解決方案...MYSQL Subselect在哪裏條款
請你幫忙使其工作?
SELECT chart FROM chart WHERE (select count(user_id) FROM users join charts ON
user_id=charts.UID and charts.chart=chart WHERE INET_NTOA(user_ip)='127.0.0.1')=0;
有3條表涉及以下的列:
chart(
chart int(5)
);
charts(
UID int(11),
chart int(5)
);
`users` (
`user_id` int(11),
`user_ip` int(10)
);
的要點是,從第一「圖表」列選擇應該傳遞給子查詢來charts.chart =圖表,而是子查詢最終會比較自己,即圖表=圖表 - 始終爲真。
我知道它不會像那樣工作......但我真的想不出其他任何方式。對於我正在嘗試做的事情,有什麼辦法嗎?
EDIT 1: 基本上我需要一個反向選擇:
select chart.chart from chart join charts on chart.chart=charts.chart join users
on user_id=charts.UID and INET_NTOA(user_ip)='127.0.0.1';
此查詢返回由用戶與ip給予標記的圖表,例如:1,4,5-,9. 但我需要選擇那些沒有被標記的,也就是:2,3,6,7,8,10等等......
編輯2: 我正在尋找某種負面聯結。我認爲這樣做,但我很笨,如何使用它。同時做一些研究...
所以......什麼想法?我在這一點上是無能的...... – Anonymous 2012-04-10 12:41:09