我寫了一個SQL查詢,我必須使用CodeIgniter。 我的查詢是: -查詢CodeIgniter
SELECT COUNT('user_id') FROM tbl_tickets_replies WHERE user_id IN (SELECT id from tbl_users WHERE username IN (SELECT username FROM tbl_tickets WHERE site_referers_id =1))
我做這在我的模型
function getCommentNumbers() {
$sql = "SELECT COUNT('user_id') FROM tbl_tickets_replies WHERE user_id IN (SELECT id from tbl_users WHERE username IN (SELECT username FROM tbl_tickets WHERE site_referers_id =1))";
return $this->db->query($sql);
}
如何可以做到這一點使用的活動記錄
它不工作:(
我有三種不同的表格是: -
tbl_users(id,username);
tbl_tickets(id,username,site_referers_id)
tbl_tickets_replies(id,user_id,comments)
我想要做的是選擇屬於具有site_referers_id = 1的特定用戶名的所有評論。 我想從tbl_tickets中選擇具有site_referes_id = 1的不同用戶名,然後從tbl_users獲取所選用戶名的id,並使用該id來統計他擁有的評論數量,並根據用戶名顯示它。 MY查詢不這樣做,它即顯示所有用戶的總評價, 假設有兩個用戶A和B與用戶ID 1和2具有10個和15條評論 那麼它應該顯示像:
A 10
B 15
,而我的查詢顯示
A
B 25
'SELECT COUNT( 'USER_ID')'沒有做什麼,你認爲它。您的意思是「SELECT COUNT(DISTINCT user_id)」或「SELECT COUNT(*)」,具體取決於您嘗試執行的操作。 – 2012-07-27 09:40:24
@MarkByers:我編輯了我的問題sir – avinashse 2012-07-27 10:03:16
Codeigniter的AR不支持子查詢,所以你不能用AR做它沒有任何竅門。 – uzsolt 2012-07-27 11:24:26