飛行日付に応じて、毎日(コストホテル+コスト飛行)あたりのコストを計算するためにどのように問題飛行機の日付に応じて、毎日の費用を計算する方法(ホテルと料金のフライト)
?
私は、エジプトの観光客のためのツアー1回あたりの費用を計算するためにデータベースの設計関係を作る必要があります。飛行日付に基づいて、人のために毎日あたり フライトコスト+ホテルコスト(部屋代+サービス)
私はエジプト
し、カイロからアムステルダムへアムステルダムから日付23/06/2017に飛行を持っていると仮定
Table tour
1 Tour 1
2 Tour 2
3 Tour 3
Table Tour Duration
Tour 1 3 days
Tour 2 6 days
表ツアー所要時間の詳細
012:26/06/2017だからその計算は以下のようになりますバック戻ります23/06/2017から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から
は、ヒルトン・ホテルで一泊コストのご宿泊を表します。 500は、カイロアムステルダム、アムステルダムからカイロへの航空便を表しています。
300は、カイロからアスワンへの飛行1回あたりの費用を表します。
飛行機の日付に応じて、毎日のコストを計算するためのテーブルリレーションを設計するにはどうすればよいですか?
**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
更新オリジナルポスト あなたはこの画像が の下に、これはあなたがツアー期間中にテーブルを必要としない固定プログラム
テーブルツアー期間の詳細と1日あたりのテーブル費用に表示されているデータは、ツアー#1の場合のみ、正しいのでしょうか? –
フライト料金とホテル価格は時間とともに変化します。このツアーは特定の期間のみ有効ですが、料金の変更が行われると、ツアー#1が無効になり、同様の新しいツアーが作成されます。またはこれについてどうやって計画していますか? –
ツアー1のみ –