这是目前有效的代码,但我想将其自动化,并可能对下面粗斜体部分的部分进行硬编码 - 这是“晶圆列表”数据表中的 CMOS_Lot-Wafer 列表,我还附上了我的代码试图对这部分进行硬编码但不起作用。 有人可以看一下并帮助我吗,谢谢
(Wafer list是用户会提供的用户列表)
dt1 = Data Table( "Wafer List" ) << Stack(
columns( :Name( "Group A - Wafer Number" ), :Name( "Group B - Wafer Number" ) ),
Source Label Column( "Label" ),
Stacked Data Column( "CMOS-Lot-Wafer" ),
Output Table( "Stacked-waferList" )
);
dt3 = Open Database(
"DSN=MS_SQL;Description=WAFERVIEWER;Trusted_Connection=Yes;APP=JMP;WSID=USSJC-J9K98H2;DATABASE=PRODUCT;",
"SELECT T.[CHECK AXSELFTEST], T.[CMOS_Lot-WaferID] FROM Summary S
INNER JOIN WS_Tests T ON T.[CMOS_Lot-WaferID] = S.[CMOS_Lot-WaferID] AND T.RetestID = S.RetestID
<EM><STRONG>WHERE S.[CMOS_Lot-Wafer] IN ('DBM301-02',</STRONG>
<STRONG>'DBM308-12',
'DBM306-24',
'DBM297-03',
'DBM308-20',
'DBM297-02',
'DBM316-03',
'DBM306-09',
'DBM024-09'</STRONG>
<STRONG>)",
"Summary"</STRONG></EM>
);
dt2 = Data Table( "Stacked waferList" ) << Join(
With( Data Table( "Summary" ) ),
Select( :Label, :Name( "CMOS-Lot-Wafer" ), :Name( "CMOS_Lot-WaferID" ) ),
SelectWith( :DieID, :CHECK AXSELFTEST ),
By Matching Columns( :Name( "CMOS_Lot-WaferID" ) = :Name( "CMOS_Lot-WaferID" ) ),
Drop multiples( 0, 0 ),
Include Nonmatches( 1, 0 ),
Preserve main table order( 1 ),
Output Table( "WS- Summary for WaferList" )
);
//代码不工作 - 我试图硬编码 CMOS_Lot-Wafer 部分但不工作
(Wafer list是用户会提供的用户列表)
dt1 = Data Table( "Wafer List" ) << Stack(
columns( :Name( "Group A - Wafer Number" ), :Name( "Group B - Wafer Number" ) ),
Source Label Column( "Label" ),
Stacked Data Column( "CMOS-Lot-Wafer" ),
Output Table( "Stacked-waferList" )
);
SQLConnection = Create Database Connection(
"DSN=MS_SQL;Description=WAFERVIEWER;Trusted_Connection=Yes;APP=JMP;WSID=USSJC-J9K98H2;DATABASE=ISTANBUL;"
);
PrePUSQL01 =
"SELECT
T.CHECK AXSELFTEST,
C.CMOS_Lot-Wafer
FROM database.dbo.WS_tests AS T
JOIN Stacked waferList AS C ON C.CMOS_Lot-Wafer = T.CMOS_Lot-Wafer";
dt = Execute SQL( SQLConnection, PrePUSQL01, "dt" );
这SQL 查询生成器在 JMP 中会自动为您执行此操作。 无需自己编写 JSL。
作为查询的一部分,您可以建立一个过滤器. 那个过滤器可以通过匹配现有数据表中的值来导入数据,就像你在这里尝试做的那样。
构建查询后,您可以保存运行脚本让 JSL 将查询作为更大脚本的一部分运行。
这看起来不像是有效的 SQL 代码:
"SELECT
T.CHECK AXSELFTEST,
C.CMOS_Lot-Wafer
FROM database.dbo.WS_tests AS T
JOIN Stacked waferList AS C ON C.CMOS_Lot-Wafer = T.CMOS_Lot-Wafer";
看来您正在尝试将 SQL 与 JSL 结合使用,这是不可能的。SQL语句是否运行在TOAD、PL/SQL Developer、SQL Navigator等数据库接口包中?