2009-09-07 53 views
1

SELECT * FROM tbl_group_join TGJ LEFT JOIN tbl_groups TG ON tg.group_id = tgj.group_id LEFT JOIN tbl_registeration TR ON tr.mem_id = tgj.mem1_id WHERE tgj.group_id = 24限制0,30需要在LEFT为COUNT JOIN采用MYSQL

以上查询工作正常。它产生两行O/P。这正是我想要的。

现在,除此之外,我还需要计算ROWS。我做了

SELECT count(mem_id) 
FROM tbl_group_join 
WHERE group_id = '24' GROUP BY group_id. 

但它使O/P在一行。也就是说,我得到一个字段中的O/P为2。

现在我需要在一个QUERY中获得这两个结果。

任何可能性

由于提前

FERO

回答

0
SELECT *, 
(SELECT count(mem_id) 
FROM tbl_group_join 
WHERE group_id = '24' GROUP BY group_id 
) as memAmount 
FROM `tbl_group_join` tgj 
LEFT JOIN tbl_groups tg ON tg.group_id = tgj.group_id 
LEFT JOIN tbl_registeration tr ON tr.mem_id = tgj.mem1_id 
WHERE tgj.group_id =24 LIMIT 0 , 30 
+0

感谢pixeline。这正是我想要的。 – Fero 2009-09-07 07:07:59

+0

谢谢pixeline。这种查询称为什么? – Fero 2009-09-07 07:11:04

+0

它被称为子选择符,它是执行此操作最差的方法。 – 2009-09-07 07:18:15