Alve
Alve

Reputation: 1465

Count rows with SQL

Please, help me with SQL query creation.

I have two tables, companies and users. users table has company_id field.

I need to count how many companies has no users at all.

Any help will be good! Thanks!

Upvotes: 0

Views: 116

Answers (4)

Malkus
Malkus

Reputation: 3726

Select Count(tblCompanies.ID)
From tblCompanies
left join tblUsers ON tblCompanies.ID = tblUsers.CompanyID
Where tblUsersID IS Null
Group By tblCompanies.ID

Upvotes: 0

DonCallisto
DonCallisto

Reputation: 29912

SELECT COUNT(*)
FROM companies c LEFT JOIN users u
ON c.company_id = u.company_id
WHERE u.company_id IS NULL

Upvotes: 1

Tim Schmelter
Tim Schmelter

Reputation: 460098

SELECT COUNT(*) 
FROM companies c
WHERE NOT EXISTS
(
  SELECT 1 FROM users u
  WHERE u.company_id = c.company_id
)

Upvotes: 2

John Woo
John Woo

Reputation: 263713

SELECT COUNT(*)
FROM companies a LEFT JOIN users b
       on a.company_ID = b.company_ID
WHERE b.company_ID IS NULL

Upvotes: 2

Related Questions