-1

ProblemWie berechnet man die Kosten pro Tag (Kosten Hotel + Kosten Flug) je nach Flugdatum?

Wie Kosten pro jeden Tag (Kosten Hotel- und Kosten Flug) je nach Flugdatum berechnen?

Ich muss Datenbank-Design-Beziehungen machen, um Kosten pro Tour für Touristen in Ägypten zu berechnen. Flugkosten und Hotelkosten (Zimmer Kosten + Service) pro jedem Tag für Person auf Flugdatum

Angenommen, ich habe Flug auf Datum 23/06/2017 von Amsterdam nach Ägypten

Und von Kairo nach Amsterdam in 26/06/2017 zurück

zurück so wird die Berechnung wie folgt sein:

Table tour 
1 Tour 1 
2 Tour 2 
3 Tour 3 

Table Tour Duration 
Tour 1 3 days 
Tour 2 6 days 

Tabelle Tour Dauer Einzelheiten

Day   flight       Hotel 
Day 1  Amsterdam to Cairo     Hilton 
Day 2 Cairo to Aswan      Hilton 
Day 3 Cairo to Amsterdam 

Von 23/06/2017 bis 26/06/2017

Table cost Per day 
Day1  500  25  
Day2 300  25 
Day3 500 

Table fligh data 
Tour1 23/06/2017 26/06/2017 1350 
Tour2 01/07/2017 07/07/2017 1425 (5 * 25 + 1300) 

25 stellen eine kostengünstige Unterkunft pro Nacht in Hilton Hotel. 500 repräsentieren Kosten Flug von Kairo Amsterdam, Amsterdam nach Kairo.

300 kosten pro Flug von Kairo nach Assuan.

Wie Tabellenrelationen zu berechnen, um Kosten pro Tag (Kosten Hotel + Kosten Flug) je nach Flugdatum zu berechnen?

**sql script** 
SE [NileTravel] 
GO 
/****** Object: Table [dbo].[ActivityType] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[ActivityType](
    [ActivityTypeID] [int] NOT NULL, 
    [ActivityType] [nvarchar](50) NULL, 
    [ProductID] [int] NULL, 
CONSTRAINT [PK_ActivityType] PRIMARY KEY CLUSTERED 
(
    [ActivityTypeID] 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 
/****** Object: Table [dbo].[AirLine] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[AirLine](
    [AirLineID] [int] NOT NULL, 
    [AirLineName] [nvarchar](50) NULL, 
CONSTRAINT [PK_AirLine] PRIMARY KEY CLUSTERED 
(
    [AirLineID] 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 
/****** Object: Table [dbo].[ChildrenDiscount] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[ChildrenDiscount](
    [ChildrenDiscountID] [int] NOT NULL, 
    [ProductID] [int] NULL, 
    [MinAge] [int] NULL, 
    [MaxAge] [int] NULL, 
    [Discount] [money] NULL, 
CONSTRAINT [PK_ChildrenDiscount] PRIMARY KEY CLUSTERED 
(
    [ChildrenDiscountID] 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 
/****** Object: Table [dbo].[Destination] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
SET ANSI_PADDING ON 
GO 
CREATE TABLE [dbo].[Destination](
    [BestimID] [int] NOT NULL, 
    [BestimName] [nvarchar](50) NULL, 
    [ParentID] [int] NULL, 
    [Image] [varbinary](max) NULL, 
CONSTRAINT [PK_Bestiming] PRIMARY KEY CLUSTERED 
(
    [BestimID] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] 

GO 
SET ANSI_PADDING OFF 
GO 
/****** Object: Table [dbo].[DurationDetails] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[DurationDetails](
    [DetailsDurationID] [int] NOT NULL, 
    [PackageDurationsID] [int] NULL, 
    [Days] [nvarchar](50) NULL, 
    [Flight] [nvarchar](50) NULL, 
    [Accomodate] [nvarchar](50) NULL, 
    [Excursion] [nvarchar](50) NULL, 
    [Transfer] [nvarchar](50) NULL, 
CONSTRAINT [PK_DurationDetails] PRIMARY KEY CLUSTERED 
(
    [DetailsDurationID] 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 
/****** Object: Table [dbo].[FlightData] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[FlightData](
    [FlighID] [nvarchar](50) NOT NULL, 
    [FlightNo] [nvarchar](50) NOT NULL, 
    [FlightDate] [datetime] NULL, 
    [FlightTypeID] [int] NULL, 
    [AirLineID] [int] NULL, 
    [Arrival] [time](7) NULL, 
    [Departure] [time](7) NULL, 
    [AdultPrice] [money] NULL, 
    [ChildPrice] [money] NULL, 
    [Stock] [int] NULL, 
    [TotalPrice] [money] NULL, 
    [Active] [bit] NULL, 
CONSTRAINT [PK_FlightData_1] PRIMARY KEY CLUSTERED 
(
    [FlighID] 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 
/****** Object: Table [dbo].[FlightRoute] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[FlightRoute](
    [FlightTypeID] [int] NOT NULL, 
    [FlightFrom] [nvarchar](50) NULL, 
    [FlightTo] [nvarchar](50) NULL, 
    [Active] [bit] NULL, 
CONSTRAINT [PK_FlightType] PRIMARY KEY CLUSTERED 
(
    [FlightTypeID] 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 
/****** Object: Table [dbo].[Hotel] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[Hotel](
    [ProductID] [int] NOT NULL, 
    [ProductName] [nvarchar](50) NULL, 
    [BestimmingID] [int] NULL, 
    [TypeID] [int] NULL, 
CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED 
(
    [ProductID] 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 
/****** Object: Table [dbo].[HotelPrice] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[HotelPrice](
    [ProductPriceID] [nchar](10) NOT NULL, 
    [ProductID] [int] NULL, 
    [FromDate] [datetime] NULL, 
    [ToDate] [datetime] NULL, 
CONSTRAINT [PK_ProductPrice] PRIMARY KEY CLUSTERED 
(
    [ProductPriceID] 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 
/****** Object: Table [dbo].[Luggage] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[Luggage](
    [LuggageID] [int] NOT NULL, 
    [AirLineID] [int] NULL, 
    [KG] [float] NULL, 
    [CostPrice] [int] NULL, 
    [SalesPrice] [int] NULL, 
    [LuggageName] [nvarchar](50) NULL, 
CONSTRAINT [PK_Luggage] PRIMARY KEY CLUSTERED 
(
    [LuggageID] 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 
/****** Object: Table [dbo].[Parent] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[Parent](
    [ParentID] [int] NOT NULL, 
    [Subject] [nvarchar](50) NULL, 
    [Text] [nvarchar](max) NULL, 
    [Slug] [nvarchar](50) NULL, 
CONSTRAINT [PK_Parent] PRIMARY KEY CLUSTERED 
(
    [ParentID] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] 

GO 
/****** Object: Table [dbo].[RoomOccupation] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[RoomOccupation](
    [RoomOccupationID] [int] NOT NULL, 
    [OccupationNo] [int] NULL, 
    [MaxAdult] [int] NULL, 
    [MaxOccupation] [int] NULL, 
    [Price] [money] NULL, 
    [ProductID] [int] NULL, 
CONSTRAINT [PK_RoomOccupation] PRIMARY KEY CLUSTERED 
(
    [RoomOccupationID] 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 
/****** Object: Table [dbo].[RoomService] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[RoomService](
    [RoomServiceID] [int] NOT NULL, 
    [RoomService] [nvarchar](50) NULL, 
    [ProductID] [int] NULL, 
CONSTRAINT [PK_RoomService] PRIMARY KEY CLUSTERED 
(
    [RoomServiceID] 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 
/****** Object: Table [dbo].[RoomType] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[RoomType](
    [RoomTypeID] [int] NOT NULL, 
    [RoomType] [nvarchar](50) NULL, 
    [ProductID] [int] NULL, 
    [RoomPrice] [money] NULL, 
CONSTRAINT [PK_RoomType] PRIMARY KEY CLUSTERED 
(
    [RoomTypeID] 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 
/****** Object: Table [dbo].[Services] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[Services](
    [ServiceID] [int] NOT NULL, 
    [ServiceType] [nvarchar](50) NULL, 
    [ProductID] [int] NULL, 
    [ServicePrice] [money] NULL, 
CONSTRAINT [PK_Services] PRIMARY KEY CLUSTERED 
(
    [ServiceID] 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 
/****** Object: Table [dbo].[Tour] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[Tour](
    [PackageID] [int] NOT NULL, 
    [PackageName] [nvarchar](100) NULL, 
    [BestimID] [int] NULL, 
    [Duration] [nvarchar](50) NULL, 
CONSTRAINT [PK_Package] PRIMARY KEY CLUSTERED 
(
    [PackageID] 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 
/****** Object: Table [dbo].[TourDestination] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[TourDestination](
    [PackageID] [int] NOT NULL, 
    [BestomingID] [int] NOT NULL 
) ON [PRIMARY] 

GO 
/****** Object: Table [dbo].[TourDuration] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[TourDuration](
    [PackageDurationsID] [int] NOT NULL, 
    [PackageID] [int] NULL, 
    [PackageDuration] [int] NULL, 
    [NightCounts] [int] NULL, 
CONSTRAINT [PK_PackageDuration] PRIMARY KEY CLUSTERED 
(
    [PackageDurationsID] 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 
/****** Object: Table [dbo].[TourType] Script Date: 23/06/2017 1:21:01 PM ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[TourType](
    [PackageTypeID] [int] NOT NULL, 
    [PackageType] [nvarchar](50) NULL, 
CONSTRAINT [PK_PackageType] PRIMARY KEY CLUSTERED 
(
    [PackageTypeID] 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 
ALTER TABLE [dbo].[ActivityType] WITH CHECK ADD CONSTRAINT [FK_ActivityType_Product] FOREIGN KEY([ProductID]) 
REFERENCES [dbo].[Hotel] ([ProductID]) 
GO 
ALTER TABLE [dbo].[ActivityType] CHECK CONSTRAINT [FK_ActivityType_Product] 
GO 
ALTER TABLE [dbo].[ChildrenDiscount] WITH CHECK ADD CONSTRAINT [FK_ChildrenDiscount_Product] FOREIGN KEY([ProductID]) 
REFERENCES [dbo].[Hotel] ([ProductID]) 
GO 
ALTER TABLE [dbo].[ChildrenDiscount] CHECK CONSTRAINT [FK_ChildrenDiscount_Product] 
GO 
ALTER TABLE [dbo].[DurationDetails] WITH CHECK ADD CONSTRAINT [FK_DurationDetails_PackageDuration] FOREIGN KEY([PackageDurationsID]) 
REFERENCES [dbo].[TourDuration] ([PackageDurationsID]) 
GO 
ALTER TABLE [dbo].[DurationDetails] CHECK CONSTRAINT [FK_DurationDetails_PackageDuration] 
GO 
ALTER TABLE [dbo].[FlightData] WITH CHECK ADD CONSTRAINT [FK_FlightData_AirLine] FOREIGN KEY([AirLineID]) 
REFERENCES [dbo].[AirLine] ([AirLineID]) 
GO 
ALTER TABLE [dbo].[FlightData] CHECK CONSTRAINT [FK_FlightData_AirLine] 
GO 
ALTER TABLE [dbo].[HotelPrice] WITH CHECK ADD CONSTRAINT [FK_ProductPrice_Product] FOREIGN KEY([ProductID]) 
REFERENCES [dbo].[Hotel] ([ProductID]) 
GO 
ALTER TABLE [dbo].[HotelPrice] CHECK CONSTRAINT [FK_ProductPrice_Product] 
GO 
ALTER TABLE [dbo].[Luggage] WITH CHECK ADD CONSTRAINT [FK_Luggage_AirLine] FOREIGN KEY([AirLineID]) 
REFERENCES [dbo].[AirLine] ([AirLineID]) 
GO 
ALTER TABLE [dbo].[Luggage] CHECK CONSTRAINT [FK_Luggage_AirLine] 
GO 
ALTER TABLE [dbo].[RoomOccupation] WITH CHECK ADD CONSTRAINT [FK_RoomOccupation_Product] FOREIGN KEY([ProductID]) 
REFERENCES [dbo].[Hotel] ([ProductID]) 
GO 
ALTER TABLE [dbo].[RoomOccupation] CHECK CONSTRAINT [FK_RoomOccupation_Product] 
GO 
ALTER TABLE [dbo].[RoomService] WITH CHECK ADD CONSTRAINT [FK_RoomService_Product] FOREIGN KEY([ProductID]) 
REFERENCES [dbo].[Hotel] ([ProductID]) 
GO 
ALTER TABLE [dbo].[RoomService] CHECK CONSTRAINT [FK_RoomService_Product] 
GO 
ALTER TABLE [dbo].[RoomType] WITH CHECK ADD CONSTRAINT [FK_RoomType_Product] FOREIGN KEY([ProductID]) 
REFERENCES [dbo].[Hotel] ([ProductID]) 
GO 
ALTER TABLE [dbo].[RoomType] CHECK CONSTRAINT [FK_RoomType_Product] 
GO 
ALTER TABLE [dbo].[TourDestination] WITH CHECK ADD CONSTRAINT [FK_PackageBestim_Bestiming] FOREIGN KEY([BestomingID]) 
REFERENCES [dbo].[Destination] ([BestimID]) 
GO 
ALTER TABLE [dbo].[TourDestination] CHECK CONSTRAINT [FK_PackageBestim_Bestiming] 
GO 
ALTER TABLE [dbo].[TourDestination] WITH CHECK ADD CONSTRAINT [FK_PackageBestim_Package] FOREIGN KEY([PackageID]) 
REFERENCES [dbo].[Tour] ([PackageID]) 
GO 
ALTER TABLE [dbo].[TourDestination] CHECK CONSTRAINT [FK_PackageBestim_Package] 
GO 
ALTER TABLE [dbo].[TourDuration] WITH CHECK ADD CONSTRAINT [FK_PackageDuration_Package] FOREIGN KEY([PackageID]) 
REFERENCES [dbo].[Tour] ([PackageID]) 
GO 
ALTER TABLE [dbo].[TourDuration] CHECK CONSTRAINT [FK_PackageDuration_Package] 
GO 

aktualisiert Original-Beitrag können Sie sich das Bild unten sehen ist diese Show, die auf festes Programm

How calculation done

+0

Die Daten, die Sie für Table Tour anzeigen Dauer Details und Tabelle Kosten pro Tag sind nur für Tour # 1, richtig? –

+0

Flugpreise und Hotelpreise ändern sich im Laufe der Zeit. Ist diese Tour nur für eine bestimmte Zeit gültig und sobald sich einer der Preise ändert, annullieren Sie Tour # 1 und erstellen eine ähnliche neue Tour? Oder wie planen Sie, dies zu tun? –

+0

ja nur für Tour 1 –

Antwort

0

Sie brauchen nicht eine Tabelle für die Dauer der Tour basierte berechnen . Zuallererst hätte man die Anzahl der Tage nur in die tour Tabelle setzen können, aber selbst dies wäre eine schlechte Idee, da die Anzahl der Tage bereits implizit durch die Datensätze in der Tabelle Tour Duration Details gegeben ist.

Die Preise im Laufe der Zeit ändern sind eine andere Sache zu prüfen.Ein mögliches Modell ist dies:

  • Tour (tour_no, Beschreibung)
  • Flug (flight_id, from_city, to_city)
  • flight_price (flight_id, from_date, to_date, Preis)
  • hotel (hotel_id, name)
  • hotel_preis (hotel_id, from_date, to_date, Preis)
  • tour_days (tour_no, day_no, flight_id, hotel_id)

Lassen Sie uns jetzt sagen, jemand will Tour # 1 Start 2017.08.25 buchen. Die Abfrage, um die Kosten zu berechnen wäre:

select coalesce(sum(fp.price), 0) + coalesce(sum(hp.price), 0) 
from tour_days d 
left join flight f on f.flight_id = d.flight_id 
left join flight_price fp on fp.flight_id = f.flight_id 
          and date '2017-08-25' between fp.from_date and fp.to_date 
left join hotel h on h.hotel_id = d.hotel_id 
left join hotel_price hp on hp.hotel_id = h.hotel_id 
         and date '2017-08-25' between hp.from_date and hp.to_date 
where d.tour_no = 1; 
+0

danke für die Antwort Berechnung basierend auf Detail Dauer Tabelle –

+0

können Sie bitte sehen Bild im ursprünglichen Beitrag –

+0

Berechnung erfolgt auf der Grundlage von festen Programm –