Hai controllato che tipo di dati hai nella tabella MT (forse ci sono più righe per ciascun LNo in quella tabella)?
La prima funzione di seguito con SQL INNER JOIN estrae ciascuna riga di dati (per LNo ) due volte aggiuntive dal database rispetto alla seconda funzione di seguito senza JOIN. Dove sbaglio?
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");