1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- USE [MES]
- GO
- /****** Object: UserDefinedFunction [dbo].[HourlyResult] Script Date: 12/20/2021 18:35:41 ******/
- IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[HourlyResult]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
- DROP FUNCTION [dbo].[HourlyResult]
- GO
- USE [MES]
- GO
- /****** Object: UserDefinedFunction [dbo].[HourlyResult] Script Date: 12/20/2021 18:35:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- /*
- TotalAll
- TotalZero
- OncePassAll
- OncePassZero
- NTFAll
- NTFZero
- RealFail
- NTFSN
- FailDSN
- */
- CREATE FUNCTION [dbo].[HourlyResult](
- @Line varchar(30),
- @Station varchar(30),
- @ODF varchar(30),
- @TestDate DATE,
- @TestHour INT)
- RETURNS TABLE as
- RETURN select
- --抄写总数,含重流;
- TotalAll = count(1),-- as 'Total',
- --抄写总数,去重流;
- TotalZero = count(case when ReDo = '0' then 1 else null end),-- as 'Total',
- --一次成功数量,含重流;
- OncePassAll = count(case when ResultType = 'OncePass' then 1 else null end),-- as 'OncePass',
- --一次成功数量,去重流;
- OncePassZero = count(case when ResultType = 'OncePass' and ReDo = '0' then 1 else null end),-- as 'OncePass',
- --NTF总数数量,含重流;
- NTFAll = count(case when ResultType = 'NTF' then 1 else null end),-- as 'NTF',
- --NTF总数数量,去重流;
- NTFZero = count(case when ResultType = 'NTF' and ReDo = '0' then 1 else null end),-- as 'NTF',
- --实际失败数量,含重流.
- RealFail = count(case when ResultType = 'RealFail' then 1 else null end),-- as 'RealFail',
- --NTF的SN集合;
- NTFSN = stuff((select ',' + SN from AMResult where Line=@Line and Station=@Station and ODF=@ODF and TestDate=@TestDate and TestHour=@TestHour and ResultType='NTF' for XML PATH('')),1,1,''),-- as 'NTFSN',
- --FinalTest为Fail的集合;
- FailDSN = stuff((select ',' + DSN from AMResult where Line=@Line and Station=@Station and ODF=@ODF and TestDate=@TestDate and TestHour=@TestHour and FinalTest='FAIL' for XML PATH('')),1,1,'')-- as 'FailDSN'
- --查询条件:线体、工站、ODF、测试日期、整点
- from AMResult where Line=@Line and Station=@Station and ODF=@ODF and TestDate=@TestDate and TestHour=@TestHour
-
- GO
|