MT 테이블에 어떤 유형의 데이터가 있는지 확인하셨나요(해당 테이블의 각 LNo에 대해 여러 행이 있을 수 있음)?
SQL INNER JOIN을 사용하는 아래의 첫 번째 함수는 각 데이터 행을 가져옵니다(예: L아니오 ) JOIN이 없는 아래 두 번째 함수와 비교하여 데이터베이스에서 두 번 추가됩니다. 내가 어디로 잘못 가고 있습니까?
Names Default To Here( 1 );
opnDtb = Function( {R, M, T}, {dtm},
dtm = Open Database(
"Driver=SQL Server;
Server=ABCD-EFGH;
DATABASE=myDB;
Trusted_Connection=Yes;",
"SELECT SM.[LNo], SM.[TestDate] AS [orgTestDate], SM.[Median], MT.[EntryDate] AS [TestDate]
FROM [myDB].[dbo].[P_STD_" || R|| "_" || T || "_" || M || "_SUMMARY] AS SM
INNER JOIN [myDB].[dbo].[P_STD_" || R || "_" || T || "_" || M || "_META] AS MT
ON SM.LNo = MT.LNo"
);
Return( dtm );
);
////TEST
clear log (); R = "D12"; T = "7"; M = "5"; dtm = opnDtb(R, M, T); dtm << set name ("sTable");Names Default To Here( 1 );
opnDtb = Function( {R, M, T}, {dtm},
dtm = Open Database(
"Driver=SQL Server;
Server=ABCD-EFGH;
DATABASE=myDB;
Trusted_Connection=Yes;",
"SELECT SM.[LNo], SM.[TestDate], SM.[Median] FROM [myDB].[dbo].[P_STD_" || R|| "_" || T || "_" || M || "_SUMMARY] AS SM"
);
Return( dtm );
);
////TEST
clear log (); R = "D12"; T = "7"; M = "5"; dtm = opnDtb(R, M, T); dtm << set name ("sTable");