2016-03-31 1 views
1

У меня есть два рабочих запроса, которые я не могу представить.Вложенный ответ postgres

Первый из них работает:

SELECT * FROM accounts WHERE account = 'some_account'; 

Второй работает просто отлично:

SELECT COUNT(*) FROM accounts; 

Я хотел бы присоединиться к этим, так что я получаю количество счетов из результата первого запроса и будет выглядеть примерно так, но я не могу этого сделать.

SELECT COUNT(account) FROM (SELECT * FROM accounts WHERE account = 'some_account'); 

Как бы это сделать?

+0

Так что вы хотите знать количество строк, где 'some_account' Accounts =? – jarlh

+0

да, это то, что хотите – 1N5818

+0

Дно имеет 'COUNT (account)', где средний имеет 'COUNT (*)', это могло бы иметь значение? –

ответ

1

Либо

SELECT COUNT(account) 
FROM (SELECT account 
     FROM accounts 
     WHERE account = 'some_account'); 

Или

SELECT COUNT(*) 
FROM accounts 
WHERE account = 'some_account'; 
1
select count(case when account = 'some_account' then 1 else null end) as Count 
FROM accounts 

 Смежные вопросы

  • Нет связанных вопросов^_^