>>/****** Object: Table [dbo].[PNR] Script Date: 24/11/2016 09:09:28 AM ******/ >> >>CREATE TABLE [dbo].[PNR]( >> [PnrId] [bigint] IDENTITY(1,1) NOT NULL, >> [RecordLocator] [varchar](6) NULL, >> [OfficeID] [varchar](50) NULL, >> [OfficeIATA] [varchar](50) NULL, >> [AgencyName] [varchar](50) NULL, >> [Sign] [varchar](50) NULL, >> [Observation] [varchar](255) NULL, >> [DateCreated] [datetime] NULL, >> [DateUpdated] [datetime] NULL, >> [AppOrgId] [int] NOT NULL, >> [PnrVersionId] [int] NOT NULL, >> [LowestFare] [varchar](255) NULL, >> [HighestFare] [varchar](255) NULL, >> [TripNumber] [varchar](255) NULL, >> [SAPNumber] [varchar](255) NULL, >> [Policy] [varchar](255) NULL, >> [ReasonCode] [varchar](255) NULL, >> [AirJustificationCode] [varchar](255) NULL, >> [AirJustificationText] [varchar](255) NULL, >> [AppliedDiscountCode] [varchar](255) NULL, >> [IsInPolicy] [varchar](255) NULL, >> [FreeText1] [varchar](255) NULL, >> [FreeText2] [varchar](255) NULL, >> [FreeText3] [varchar](255) NULL, >> [FreeText4] [varchar](255) NULL, >> [FreeText5] [varchar](255) NULL, >> [SiteCode] [varchar](10) NULL, >> [WebFareTotal] [varchar](255) NULL, >> CONSTRAINT [PK_Report] PRIMARY KEY CLUSTERED >>( >> [PnrId] ASC >>)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] >>) ON [PRIMARY] >> >>GO >> >>SET ANSI_PADDING OFF >>GO >> >>ALTER TABLE [dbo].[PNR] ADD CONSTRAINT [LM_REPORT] DEFAULT (getdate()) FOR [DateCreated] >>GO >> >>ALTER TABLE [dbo].[PNR] ADD CONSTRAINT [DF_PNR_DateCreated1] DEFAULT (getdate()) FOR [DateUpdated] >>GO >> >>ALTER TABLE [dbo].[PNR] WITH CHECK ADD CONSTRAINT [FK_PNR_PnrVersion] FOREIGN KEY([PnrVersionId]) >>REFERENCES [dbo].[PnrVersion] ([PnrVersionId]) >>GO >> >>ALTER TABLE [dbo].[PNR] CHECK CONSTRAINT [FK_PNR_PnrVersion] >>GO >> >>/****** Object: Table [dbo].[TST] Script Date: 24/11/2016 09:11:25 AM ******/ >> >>CREATE TABLE [dbo].[TST]( >> [Id] [bigint] IDENTITY(1,1) NOT NULL, >> [BaseFareAmount] [float] NULL, >> [TotalFareAmount] [float] NULL, >> [TaxAmount] [float] NULL, >> [CurrencyBaseFare] [varchar](3) NULL, >> [PnrId] [bigint] NULL, >> [FareBasis] [varchar](250) NULL, >> [CurrencyTotalFare] [varchar](3) NULL, >> [SegmentRPH] [varchar](100) NULL, >> [EquivalentAmount] [float] NULL, >> [EquivalentCurrency] [varchar](3) NULL, >> [SEGMENTTATTOONUMBERS] [varchar](50) NULL, >> [PAXTATTOONUMBERS] [varchar](50) NULL, >> CONSTRAINT [PK_TST] PRIMARY KEY CLUSTERED >>( >> [Id] ASC >>)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] >>) ON [PRIMARY] >> >>GO >> >>SET ANSI_PADDING OFF >>GO >> >>ALTER TABLE [dbo].[TST] WITH CHECK ADD CONSTRAINT [FK_TST_PNR] FOREIGN KEY([PnrId]) >>REFERENCES [dbo].[PNR] ([PnrId]) >>ON UPDATE CASCADE >>ON DELETE CASCADE >>GO >> >>ALTER TABLE [dbo].[TST] CHECK CONSTRAINT [FK_TST_PNR] >>GO >> >> >>/****** Object: Table [dbo].[Ticket] Script Date: 24/11/2016 09:10:42 AM ******/ >> >>CREATE TABLE [dbo].[Ticket]( >> [Id] [bigint] IDENTITY(1,1) NOT NULL, >> [TicketNumber] [varchar](50) NULL, >> [PnrId] [bigint] NULL, >> [TicketDate] [date] NULL, >> [AirlineTktCode] [varchar](50) NULL, >> [TicketType] [varchar](3) NULL, >> [IssuerCode] [varchar](15) NULL, >> [FreeTex] [varchar](250) NULL, >> [AssociatedSegmentTattooNumbers] [varchar](50) NULL, >> [ASSOCIATEDPAXTATTOONUMBERS] [varchar](50) NULL, >> CONSTRAINT [PK_Ticket] PRIMARY KEY CLUSTERED >>( >> [Id] ASC >>)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] >>) ON [PRIMARY] >> >>GO >> >>SET ANSI_PADDING OFF >>GO >> >>ALTER TABLE [dbo].[Ticket] WITH CHECK ADD CONSTRAINT [FK_Ticket_PNR] FOREIGN KEY([PnrId]) >>REFERENCES [dbo].[PNR] ([PnrId]) >>ON UPDATE CASCADE >>ON DELETE CASCADE >>GO >> >>ALTER TABLE [dbo].[Ticket] CHECK CONSTRAINT [FK_Ticket_PNR] >>GO >>>>
>>TST Table: >> >>TSTId PNRId PaxTattooNumbers >>1 1 1,2,3 >> >>Ticket Table: >> >>TicketId PnrId AssociatedPaxTattooNumbers >>1 1 1 >>2 1 2 >>3 1 3 >>>>
>>TicketId PnrId AssociatedPaxTattooNumbers >>1 1 1,2 >>2 1 3 >>>>
select pnrid >> ,[SEGMENTTATTOONUMBERS] >> ,[PAXTATTOONUMBERS] >>from tst >>where not exists (select pnrid >> ,associatedsegmenttattoonumbers >> ,associatedpaxtattoonumbers >> from ticket >> where pnrid = tst.pnrid >> and associatedsegmenttattoonumbers = segmenttattoonumbers >> and associatedpaxtattoonumbers = paxtattoonumbers) >> order by pnrid>>
CREATE FUNCTION [dbo].[fnSplitString] ( @string NVARCHAR(MAX), @delimiter CHAR(1) ) RETURNS @output TABLE(splitdata NVARCHAR(MAX) ) BEGIN DECLARE @start INT, @end INT SELECT @start = 1, @end = CHARINDEX(@delimiter, @string) WHILE @start < LEN(@string) + 1 BEGIN IF @end = 0 SET @end = LEN(@string) + 1 INSERT INTO @output (splitdata) VALUES(SUBSTRING(@string, @start, @end - @start)) SET @start = @end + 1 SET @end = CHARINDEX(@delimiter, @string, @start) END RETURN ENDHow would I adjust my query to get this to work?