Ich habe ein SSIS-Paket, das Stored Procedure-Feed im Back-End hat. Ich muss die automatische Nummernlogik für diesen ChannelName ableiten. Mein aktueller Code ist:Ableiten von Autonummer basierend auf Wert aus einer anderen Spalte in SQL
IF @p_channelname ='ABCD'
BEGIN
;WITH CTE_AUTONUMBER_PV_AMER AS
(SELECT RECORDSEQ
, 'ABCD'+CAST(@PrevOrderID+DENSE_RANK()OVER(ORDER BY (RECORDSEQ)) AS NVARCHAR(MAX)) AS AUTONUMBER_UPDATE
, AUTONUMBER
FROM IC_CTXS_TRANSACTION_SOURCEFEED TGT
WHERE TGT.[INTERFACE NAME] [email protected]_interface
AND TGT.[FILENAME]= @p_sourcefilename
AND TGT.CHANNEL = @p_channelname
AND TGT.GEO='America'
) UPDATE CTE_AUTONUMBER_PV_AMER
SET AUTONUMBER = AUTONUMBER_UPDATE
Das Ergebnis ist:
Autonumber ProductSKU Quantity
--------- ---------- --------
ABCD123 00001597 42
ABCD124 00001600 42
ABCD125 00001597 35
ABCD126 00001600 35
ABCD127 00001597 39
ABCD128 00001600 39
Hier ist die '123' (@ PrevOrderID) aus einer früheren Datei.
Ich möchte folgende Ergebnisse ableiten:
Autonumber ProductSKU Quantity
--------- ---------- --------
ABCD123 00001597 42
ABCD123 00001600 42
ABCD124 00001597 35
ABCD124 00001600 35
ABCD125 00001597 39
ABCD125 00001600 39
Das Produkt SKUs: 00001597 und 00001600 werden konstante Werte sein.
Wie kann ich den Code ändern, um dieses Ergebnis zu erhalten?
TIA :)
Beispieleingabe würde das viel leichter verständlich machen. –
Ja, wir müssen die Startdaten sehen (besonders die RECORDSEQ-Spalte), um zu helfen. –
RecordSeq ist nur die Sequenz Nr. Von 1 – Aiswarya