Интересно, можно ли мне немного помочь?Я все еще новичок в SQL, и я учусь с каждым днем, пытаясь делать что-то более сложное каждый день.
У меня есть набор данных, в котором есть дубликаты номеров заказов.Исходя из этого, я хочу сделать две вещи: во-первых, я рассчитываю на подсчет количества уникальных номеров заказов, а затем, во-вторых, сумму всех номеров заказов.
Мне удалось выполнить вторую часть этого, но у меня возникли некоторые трудности с выполнением Подсчета различных номеров заказов.
Пожалуйста, см. Ниже мой запрос, я знаю, что мои объединения не верны, верносейчас, как я буду работать над ними позже.Я работаю с ODBC progress v10 и использую диспетчер запросов Microsoft для извлечения, а затем вручную пишу код в блокноте и перехожу обратно в Excel, поскольку в настоящее время моя компания не может получить SSMS.
SELECT
Company_0.CoaCompanyName,
SopOrder_0.SooOrderDate,
COUNT(DISTINCT CASE WHEN SopOrder_0.SooOrderNumber = SopOrder_0.SooOrderNumber THEN 1 ELSE 0 END) AS 'Orders',
SUM(CASE WHEN SopOrder_0.SooOrderNumber IS NOT NULL THEN 1 ELSE 0 END) AS 'Order Items',
SopOrderItem_0.SoiValue,
SopOrder_0.SooParentOrderReference
FROM
SBS.PUB.Company Company_0,
SBS.PUB.SopOrder SopOrder_0,
SBS.PUB.SopOrderItem SopOrderItem_0
WHERE
SopOrder_0.SopOrderID = SopOrderItem_0.SopOrderID
AND Company_0.CompanyID = SopOrder_0.CompanyID
AND SopOrder_0.SooOrderDate > '2019-01-01'
Текущийданные выглядят как
Company Name Order Numbers
-------------------------------------
CompanyA Orderno1
CompanyA Orderno1
CompanyB Orderno2
CompanyB Orderno3
CompanyB Orderno3
CompanyB Orderno3
Как я хочу, чтобы они выглядели:
Company Name Orders Order Items
-------------------------------------------------
CompanyA 1 2
CompanyB 2 4