首页 > 解决方案 > Joins和count相关的SQL查询

问题描述

请澄清我的sql查询问题。

我的 sql server 示例中有 4 个表,如下所示:

Products ---> Id, productname
Suppliers ---> Id, ProductId, suppliername
Customer --> Id, supplierId, customername, orderId
Orders --> Id, ordername

我的存储过程的输入是productId。

我想获取 productid 是我的 sqlproc 参数(输入)和 OrderIds 的所有供应商,其中ordername = 'orderorange' --

标签: sqlstored-procedures

解决方案


SELECT ProductId, productname, suppliername,
    (SELECT COUNT(*) FROM Customer WHERE Id = 1 and Customer.supplierId = Suppliers.Id) AS CountCustomer1
    (SELECT COUNT(*) FROM Orders WHERE ordername = 'orderorange') AS CountOrderOrange
FROM Suppliers
WHERE ProductId = ?

推荐阅读