Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Най-скорошният запис в ляво съединение

Опитайте това:

SELECT a.State, count(c.CustomerID)
FROM Product p
INNER JOIN Customer c ON c.CustomerID = p.CustomerID
LEFT JOIN Address a ON a.CustomerID = c.CustomerID 
      AND a.AddressID = 
        (
           SELECT MAX(AddressID) 
           FROM Address z 
           WHERE z.CustomerID = a.CustomerID
        )
WHERE p.ProductID = 101
GROUP BY a.State


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свържете две таблици, използвайте само последната стойност на дясната таблица

  2. Бърз начин за намиране на употреби на DB обекти в SQL Server 2008?

  3. Пул на връзки в .NET/SQL сървър?

  4. Планът, базиран на набор, работи по-бавно от функция със скаларни стойности с много условия

  5. Как да конвертирате Unix Timestamp в стойност на дата/час в SQL Server