# coding: utf-8

# In[ ]:

WITH List AS (
SELECT e.*,f.* FROM
( SELECT DISTINCT c.lot_id, c.wafer_key,
LEFT(c.layer_id, CHARINDEX('_', c.layer_id) -1) as Layer,c.layer_id,
COUNT(0) AS defect_count,d.class_number, REPLACE(LTRIM(REPLACE(c.wafer_id, '0', ' ')), ' ', '0') as waferid
FROM [SSMC_IEDA].[dbo].[insp_wafer_summary] AS c, [SSMC_IEDA].[dbo].[insp_defect] AS d
where c.wafer_key = d.wafer_key and c.layer_id like '[CTM-M]%_ASI' and c.inspection_date BETWEEN '2018-11-01' AND '2018-11-20'
AND d.class_number in (167, 67)
GROUP BY c.lot_id,c.wafer_id,d.class_number,c.layer_id, c.wafer_key) AS e INNER JOIN
(select distinct a.recpid, a.stage, a.lotid, b.automatedrecipeid, LEFT(a.stage, CHARINDEX('_', a.stage) -1) as Stg from mes_tbl_hist AS a
INNER JOIN mes_tbl_recp AS b ON a.recpid = b.recpid WHERE a.eqpid LIKE 'AEM2%' AND a.stage NOT LIKE 'REWORK') AS f ON e.lot_id = f.lotid
AND (((e.Layer = 'CTM' OR e.Layer LIKE 'CTM%') AND (f.Stg = 'CTM' OR f.Stg LIKE 'CTM%'))
OR
(e.Layer LIKE 'M%' AND f.Stg LIKE CONCAT(substring(e.Layer, PatIndex('%[a-z]%',LOWER(e.Layer)), case PatIndex('%[a-z]%',LOWER(e.Layer)) when 0 then 2 else 1 end),'E',substring(e.Layer, PatIndex('%[0-9]%', e.Layer),case PatIndex('%[0-9]%',e.Layer) when 0 then 2 else 1 end),'%')
))
AND f.Stg NOT LIKE 'MW%'
AND f.Stg NOT LIKE 'MT%'
AND e.Layer NOT LIKE 'MT%'
AND e.Layer NOT LIKE 'MW%' )
SELECT DISTINCT List.layer_id,List.defect_count,b.eqpid, SUBSTRING(b.ParameterName, CHARINDEX('-', b.parametername) +1,1) as Chamber,
b.lotid,a.slotid,
a.waferid,
LEFT(b.ParameterName, CHARINDEX('-', b.ParameterName) -1) as Param_Name,
LEFT(c.stage, CHARINDEX('_', c.stage) -1) as Stg,
c.stage,
SUBSTRING(b.ParameterName, CHARINDEX('-', b.parametername) +3,+1) as Step,
SUBSTRING(b.ParameterName, CHARINDEX('-', b.parametername) +5, LEN( b.parametername)) as Recipie_Name,
b.parametername,
a.[data] as data1,a.finishtime,
rank() OVER (PARTITION BY a.slotid, b.eqpid,b.lotid,c.stage,List.layer_id,b.parametername ORDER BY a.finishtime) AS RNK
FROM [SSMC_RTM].[dbo].[rtm_tbl_massdata] a INNER JOIN [SSMC_RTM].[dbo].[rtm_tbl_datahist] b
ON a.[datahist_fno]=b.[fno] INNER JOIN SSMC_RTM.dbo.rtm_tbl_batchdatahist c ON b.fno = c.datahist_fno
INNER JOIN List ON List.lot_id = b.lotid AND List.waferid = a.slotid AND LEFT(c.stage, CHARINDEX('_', c.stage) -1) = List.Stg
AND SUBSTRING(b.parametername, CHARINDEX('-', b.parametername) +5, LEN( b.parametername)) = List.automatedrecipeid
WHERE b.parametername LIKE '%-4-%'
--AND b.parametername NOT LIKE '%-$'
AND b.parametername LIKE '%-%-%-%'
AND ( b.parametername LIKE 'ETCM_PHA4_A%' OR b.parametername LIKE 'ETCM_PHA4_B%'
OR b.parametername LIKE 'ETCM_PHB4_A%' OR b.parametername LIKE 'ETCM_PHB4_B%'
OR b.parametername LIKE 'ETCM_PHC4_A%' OR b.parametername LIKE 'ETCM_PHC4_B%'
OR b.parametername LIKE 'HELK_MEAN_A%' OR b.parametername LIKE 'HELK_MEAN_B%'
OR b.parametername LIKE 'LOWERCHM_PRESS_A%' OR b.parametername LIKE 'LOWERCHM_PRESS_B%'
OR b.parametername LIKE 'PBK4_A%' OR b.parametername LIKE 'PBK4_B%'
OR b.parametername LIKE 'RR23_MEAN_A%' OR b.parametername LIKE 'RR23_MEAN_B%'
OR b.parametername LIKE 'RR23_MAX._A%' OR b.parametername LIKE 'RR23_MAX._B%'
OR b.parametername LIKE 'RR13_MEAN_A%' OR b.parametername LIKE 'RR13_MEAN_B%'
OR b.parametername LIKE 'RR13_MAX._A%' OR b.parametername LIKE 'RR13_MAX._B%'
OR b.parametername LIKE 'THR3_MAX._A%' OR b.parametername LIKE 'THR3_MAX._B%'
OR b.parametername LIKE 'THR3_MAX._DIFF_A%' OR b.parametername LIKE 'THR3_MAX._DIFF_B%'
OR b.parametername LIKE 'THR3_MEAN_A%' OR b.parametername LIKE 'THR3_MEAN_B%'
OR b.parametername LIKE 'THR3_MEAN_DIFF_A%' OR b.parametername LIKE 'THR3_MEAN_DIFF_B%'
OR b.parametername LIKE 'THR3_MEAN_SLOPE_A%' OR b.parametername LIKE 'THR3_MEAN_SLOPE_B%'
-- b.parametername LIKE 'BIAS_COEF_A%' OR b.parametername LIKE 'BIAS_COEF_B%'
OR b.parametername LIKE 'CURRENT_MAX._A%' OR b.parametername LIKE 'CURRENT_MAX._B%'
OR b.parametername LIKE 'CURRENT_MAX._DIFF_A%' OR b.parametername LIKE 'CURRENT_MAX._DIFF_B%'
OR b.parametername LIKE 'CURRENT_MEAN_A%' OR b.parametername LIKE 'CURRENT_MEAN_B%'
OR b.parametername LIKE 'CURRENT_MEAN_DIFF_A%' OR b.parametername LIKE 'CURRENT_MEAN_DIFF_B%'
OR b.parametername LIKE 'DCB3_MEAN_A%' OR b.parametername LIKE 'DCB3_MEAN_B%'
--OR b.parametername LIKE 'DCB3_MEAN_DIFF_A%' OR b.parametername LIKE 'DCB3_MEAN_DIFF_B%'
OR b.parametername LIKE 'DCB3_MEAN_SLOPE_A%' OR b.parametername LIKE 'DCB3_MEAN_SLOPE_B%'
OR b.parametername LIKE 'ETCM_PHA4_DIFF_A%' OR b.parametername LIKE 'ETCM_PHA4_DIFF_B%'
OR b.parametername LIKE 'ETCM_PHB4_DIFF_A%' OR b.parametername LIKE 'ETCM_PHB4_DIFF_B%'
OR b.parametername LIKE 'ETCM_PHC4_DIFF_A%' OR b.parametername LIKE 'ETCM_PHC4_DIFF_B%'
OR b.parametername LIKE 'HECL_MAX._A%' OR b.parametername LIKE 'HECL_MAX._B%'
OR b.parametername LIKE 'HECL_MEAN_A%' OR b.parametername LIKE 'HECL_MEAN_B%'
OR b.parametername LIKE 'HECL_MEAN_DIFF_A%' OR b.parametername LIKE 'HECL_MEAN_DIFF_B%'
OR b.parametername LIKE 'HECL_MIN._A%' OR b.parametername LIKE 'HECL_MIN._B%'
OR b.parametername LIKE 'HELK_MEAN_DIFF_A%' OR b.parametername LIKE 'HELK_MEAN_DIFF_B%'
OR b.parametername LIKE 'HELK_MEAN_SLOPE_A%' OR b.parametername LIKE 'HELK_MEAN_SLOPE_B%'
OR b.parametername LIKE 'LOWERCHM_PRESS_DIFF_A%' OR b.parametername LIKE 'LOWERCHM_PRESS_DIFF_B%'
OR b.parametername LIKE 'PBK4_DIFF_A%' OR b.parametername LIKE 'PBK4_DIFF_B%'
OR b.parametername LIKE 'RF11_MAX._A%' OR b.parametername LIKE 'RF11_MAX._B%'
OR b.parametername LIKE 'RF11_MAX._DIFF_A%' OR b.parametername LIKE 'RF11_MAX._DIFF_B%'
OR b.parametername LIKE 'RF11_MEAN_A%' OR b.parametername LIKE 'RF11_MEAN_B%'
OR b.parametername LIKE 'RF21_MAX._A%' OR b.parametername LIKE 'RF21_MAX._B%'
OR b.parametername LIKE 'RF21_MEAN_A%' OR b.parametername LIKE 'RF21_MEAN_B%'
OR b.parametername LIKE 'RF21_MEAN_DIFF_A%' OR b.parametername LIKE 'RF21_MEAN_DIFF_B%'
--OR b.parametername LIKE 'RF21_MIN._A%' OR b.parametername LIKE 'RF21_MIN._B%'
OR b.parametername LIKE 'RF21_SD_A%' OR b.parametername LIKE 'RF21_SD_B%'
OR b.parametername LIKE 'RLD3_MEAN_A%' OR b.parametername LIKE 'RLD3_MEAN_B%'
OR b.parametername LIKE 'RLD3_MEAN_DIFF_A%' OR b.parametername LIKE 'RLD3_MEAN_DIFF_B%'
OR b.parametername LIKE 'RR13_MAX._A%' OR b.parametername LIKE 'RR13_MAX._B%'
OR b.parametername LIKE 'RR13_MAX._DIFF_A%' OR b.parametername LIKE 'RR13_MAX._DIFF_B%'
OR b.parametername LIKE 'RR23_MEAN_DIFF_A%' OR b.parametername LIKE 'RR23_MEAN_DIFF_B%'
OR b.parametername LIKE 'RR23_MEAN_SLOPE_A%' OR b.parametername LIKE 'RR23_MEAN_SLOPE_B%'
OR b.parametername LIKE 'RTN3_MEAN_A%' OR b.parametername LIKE 'RTN3_MEAN_B%'
OR b.parametername LIKE 'RTN3_MEAN_DIFF_A%' OR b.parametername LIKE 'RTN3_MEAN_DIFF_B%'
--OR b.parametername LIKE 'SOURCE_COEF_A%' OR b.parametername LIKE 'SOURCE_COEF_B%'
OR b.parametername LIKE 'SRTM_A%' OR b.parametername LIKE 'SRTM_B%'
OR b.parametername LIKE 'SRTM_SLOPE_A%' OR b.parametername LIKE 'SRTM_SLOPE_B%'
OR b.parametername LIKE 'TMP1_MAX._A%' OR b.parametername LIKE 'TMP1_MAX._B%'
OR b.parametername LIKE 'TMP1_MAX._DIFF_A%' OR b.parametername LIKE 'TMP1_MAX._DIFF_B%'
OR b.parametername LIKE 'TMP1_MEAN_A%' OR b.parametername LIKE 'TMP1_MEAN_B%'
--OR b.parametername LIKE 'TMP1_MEAN_DIFF_A%' OR b.parametername LIKE 'TMP1_MEAN_DIFF_B%'
OR b.parametername LIKE 'VOLT_MAX._A%' OR b.parametername LIKE 'VOLT_MAX._B%'
--OR b.parametername LIKE 'VOLT_MAX._DIFF_A%' OR b.parametername LIKE 'VOLT_MAX._DIFF_B%'
OR b.parametername LIKE 'VOLT_MEAN_A%' OR b.parametername LIKE 'VOLT_MEAN_B%'
OR b.parametername LIKE 'VOLT_MEAN_DIFF_A%' OR b.parametername LIKE 'VOLT_MEAN_DIFF_B%'
)

我的代码-sql query的更多相关文章

  1. NHibernate系列文章二十六:NHibernate查询之SQL Query查询(附程序下载)

    摘要 NHibernate在很早的版本就提供了SQL Query(原生SQL查询),对于很复杂的查询,如果使用其他的查询方式实现比较困难的时候,一般使用SQL Query.使用SQL Query是基于 ...

  2. 使用JSTL的sql:query标签制作分页查询遇到NoSuchFieldError: deferredExpression

    参考:http://hi.baidu.com/desyle/item/4fe650265792d7182a0f1c33 症状: 如题所述,代码如下 <sql:query var="re ...

  3. jstl中的sql:query标签获取的结果如何格式化输出

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  4. .net连接DB2的异常SQL0666 - SQL query exceeds specified time limit or storage limit.错误处理

    SQL0666 - SQL query exceeds specified time limit or storage limit. 原因:查询超时 解决办法: set the DbCommand.C ...

  5. Freebie - Utility Form: Generate Excel Report From SQL Query In Oracle Forms 6i And 11g

    Sharing a form to generate Excel file report from SQL query in Oracle Forms. This form can be used i ...

  6. jasper ireport create a report with parameters without sql query

    I'm new in jasper ireport , and I want to know if it is possible to create a report only with static ...

  7. REP-20147 Cannot implement column link for this detail SQL query. Converting to group link.

    注:本文为原创,作为学习交流使用,转载请标明作者及出处,作者保留追究法律责任的权力. Lumen Su lzsu1989#gmail.com (#=@) www.cnblogs.com/lzsu198 ...

  8. EntityFramework 学习 一 Execute Native SQL Query

    SQL query for entity types: using (var ctx = new SchoolDBEntities()) { var studentList = ctx.Student ...

  9. Entity Framework Tutorial Basics(39):Raw SQL Query

    Execute Native SQL Query You can execute native raw SQL query against the database using DBContext. ...

随机推荐

  1. 常用的lamp环境以及一些依赖包的安装

  2. EVE-NG简单入门介绍

    此篇文章简单的介绍下模拟器EVE-NG的使用,具体包括Dynamips设备导入与运行,IOL设备的导入与运行,QEMU设备的导入与运行,客户端软件的安装,物理网络与虚拟网络的结合等. 一.导入镜像 D ...

  3. mysql的报错

    这个错误是因为mysql的进程错误关闭导致的,我们需要把/var/lib/mysql/mysql.sock文件删除或者改名,之后再重启就ok

  4. 记录PHP的执行时间

    网上不少误导信息,实际上这个答案在PHP源码中的Zend文件夹下bench.php是有的 在此纠正下网络上复制粘贴造成的错误.希望后来人少踩点坑. function getmicrotime() { ...

  5. MSSQL转Mysql常用函数,语法等

    MSSQL转Mysql常用 一.字段类型 MSSQL Mysql 备注 "nchar" "char()" 最大长度为255 "nvarchar&quo ...

  6. 较为复杂的实现Parcelable的子类--推荐Android中使用

    2017-08-14 21:23:34 一个较为复杂的Parcelable实现类 public class CommentShareBean implements Parcelable { /** * ...

  7. [Leetcode 39]组合数的和Combination Sum

    [题目] Given a set of candidate numbers (candidates) (without duplicates) and a target number (target) ...

  8. hive常用操作

    相关显示参数设置 显示参数设置 set hive.cli.print.header=true; // 打印列名 set hive.cli.print.row.to.vertical=true; // ...

  9. C语言常见易错题集(分析及解答)(仅可用于交流,勿用于商业用途)

    1.能正确表示a和b同时为正或同时为负的逻辑表达式是( D  ). A.(a>=0||b>=0)&&(a<0||b<0)             B.(a> ...

  10. eclipse代码自动补全。

    打开 Eclipse -> Window -> Perferences 找到Java 下的 Editor 下的 Content Assist , 右边出现的选项中,有一个Auto acti ...