我想编写一个返回下一个结果的查询:
[
[0] => [
'login' => 'user',
'count' => '2'
],
[1] => [
'login' => 'test',
'count' => '2'
]
]
说明:
login
列是一个简单的列,其中包含数据,count是所有结果的COUNT。
如果我写
SELECT login, COUNT(*) FROM `users` WHERE 1 GROUP BY `users`.`id`
我将获得下一个数据:
[
[0] => [
'login' => 'user',
'count' => '1'
],
[1] => [
'login' => 'test',
'count' => '1'
]
]
如你所见,COUNT不正确(我需要2)。 如果我不使用GROUP语句,我将获得下一个数据:
[
[0] => [
'login' => 'user',
'count' => '2'
],
]
COUNT是正确的,但并非所有数据都被提取。 是否可以在没有子查询的情况下为一个查询获取所有这些内容?
谢谢。
答案 0 :(得分:0)
select login as ID,(select COUNT(*) from users) as USERCOUNT from users;
通过将嵌套的select语句用作列并使用非函数名定义它,它将返回带有表的select语句的结果。