У меня есть две таблицы, которые я связываю с INNER JOIN. Это таблица заголовков счетов-фактур и таблица счетов-фактур.Столбец счетчика в запросе SQL
Что бы я хотел добавить, это какой-то столбец счетчика, который дал бы мне 1 для каждого уникального номера счета, а 0 для любого дублированного номера счета-фактуры, если счет-фактура имеет более одной позиции. Тогда я позволю мне запустить подсчет по различным столбцам в Excel, когда я проанализирую свои данные позже. В принципе, это счет, но только по записям левой таблицы, игнорируя правую таблицу.
Я просто не могу понять, как использовать COUNT() или CASE, чтобы заставить это работать. Это вообще возможно?
Это мой запрос:
SELECT P.DocNum
, L.LineNum
, P.DocCur
, P.DocTotalFC
, P.DocTotal
, CASE
WHEN LEFT(L.AcctCode, 1) = '7' THEN 'Admin'
WHEN LEFT(L.AcctCode, 2) = '15' THEN 'Admin'
WHEN L.AcctCode = '11501' THEN 'MX'
WHEN LEFT(L.Project, 1) = 'W' THEN 'MX'
WHEN L.OcrCode2 = '570' THEN 'MEC'
WHEN L.OcrCode2 = '590' THEN 'ZHU'
ELSE 'Flight Ops'
END AS 'Type'
, L.AcctCode AS 'Account'
, L.OcrCode AS 'Aircraft'
, L.OcrCode2 AS 'Department'
, L.OcrCode3 AS 'Business Unit'
, L.Project AS 'Project'
, L.LineTotal
FROM OPCH P
INNER JOIN PCH1 L ON P.DocEntry = L.DocEntry
WHERE P.DocDate BETWEEN '2016-01-01' AND '2016-03-31'
ORDER BY P.DocNum, L.LineNum
Любые намеки высоко оценены.
Заранее спасибо.
Какой из номер счета? Какая версия 'SQL Server'? –
Номер счета-фактуры - поле DocNum. Сервер SQL Server 2008. Строка_раздела над разделом от Sagi делает трюк :) – Matth