Ich habe eine Tabelle, die 6 Felder enthält (JobGUID, FunctionName,InFileName,InFileSize,OutFileName,OutFileSize)
SQL - Join in derselben Tabelle für passende Felder
One Function ist CheckFile
, und der andere ist UnZipFile
. Die CheckFile
. InFileName
und InFileSize
sollten gleich UnZipFile
sein. OutFileName
und OutFileSize
. Ich möchte ein JOIN machen, das es mir ermöglicht, beide Seiten nebeneinander zu sehen, damit ich die Übereinstimmung der Dateigrößen vergleichen kann.
Hier ist was ich bisher habe. Es scheint zu funktionieren, aber dupliziert jeden Dateinamen und jede Dateigröße. Es gibt 22 entsprechende Zeilen für CheckFile und 22 Zeilen für UnZipFile. Ich will es nur 22 Zeilen ausgegeben, aber es gibt 44.
SELECT CheckFile.InFileName, CheckFile.InFileSize,
UnZipFile.OutFileName, UnZipFile.OutFileSize,
CheckFile.InFileSize - UnZipFile.OutFileSize as 'FileSizeDifference'
FROM [MY_DATABASE].[dbo].[MY_TABLE] CheckFile
JOIN [MY_DATABASE].[dbo].[MY_TABLE] UnZipFile ON CheckFile.InFileName = UnzipFile.OutFileName
WHERE CheckFile.JobGUID = 'Some GUID #'
and CheckFile.FunctionName = 'CheckFile'
and UnZipFile.FunctionName = 'UnZipFile'
and CheckFile.InFileName like '%.txt'
alle Betrogenen auf Spalte infilename oder outfilename in Ihrer Tabelle eine Übereinstimmung [MEIN TISCH]? – xbb
Versuchen Sie 'Select distinct'. –
@DanBracuk danke das hat funktioniert – danglesauce19