Advertisement
aliGo

Untitled

Jun 6th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 1.11 KB | None | 0 0
  1. with email_filter AS (SELECT policyId,
  2.                              ROW_NUMBER() OVER (PARTITION BY COALESCE(insuredEmail, insurerEmail,
  3.                                                                       customerEmail) ORDER BY policyId ASC) AS rownum
  4.                       FROM dbo.AllDataView)
  5.  
  6. SELECT v.policyId,
  7.        v.status,
  8.        v.agentCode,
  9.        v.beginDate,
  10.        v.endDate,
  11.        CONCAT(insuredLastName, ' ', insuredFirstName, ' ', insuredPatronymic) AS passenger,
  12.        COALESCE(insuredEmail, insurerEmail, customerEmail)                    AS email
  13. FROM email_filter ef
  14.     inner join dbo.AllDataView  v on v.policyId = ef.policyId
  15. WHERE v.beginDate >= CONVERT(datetime, '01.04.2019', 104)
  16.   AND v.productType IN ('AIR', 'TRAVEL_AIR', 'AMADEUS_AIR', 'AMADEUS_TRAVEL_AIR')
  17.   AND v.status = 'CONFIRMED'
  18.   AND CAST(v.beginDate AS date) =
  19.       CAST((SELECT TOP 1 value FROM STRING_SPLIT(segmentDepartureDate, ';') ORDER BY value) AS date)
  20.   AND CAST(v.endDate AS date) =
  21.       CAST((SELECT TOP 1 value FROM STRING_SPLIT(segmentArrivalDate, ';') ORDER BY value DESC) AS date)
  22.   AND v.rownum = 1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement