2016-03-31 14 views
1

Ich habe zwei funktionierende Abfragen, die ich nicht zu verschachteln scheint.Verschachtelte Postgres-Abfrage

Zuerst arbeitet man:

SELECT * FROM accounts WHERE account = 'some_account'; 

Zweitens funktioniert gut:

SELECT COUNT(*) FROM accounts; 

Ich möchte diese verbinden, so dass ich die Anzahl der Konten aus dem Ergebnis der ersten Abfrage und es bekommen würde ungefähr so ​​aussehen, aber ich kann es nicht tun.

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

Wie würde ich das tun?

+0

So möchten Sie die Anzahl der Zeilen, in denen Konto = 'some_account' wissen? – jarlh

+0

ja das ist was wollen – 1N5818

+0

Die untere hat 'COUNT (account)' wo die mittlere hat COUNT (*) ', würde das einen Unterschied machen? –

Antwort

1

Entweder

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

Oder

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