我有以下3個表請幫我創建一個SQL查詢
CREATE TABLE [dbo].[dspartner](
[dspartnerid] [bigint] IDENTITY(1,1) NOT NULL,
[name] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[priority] [int] NULL)
CREATE TABLE [dbo].[hotels](
[hotelid] [int] PRIMARY KEY IDENTITY(1,1) NOT NULL,
[name] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[DSPartnerid] [bigint] NULL,
)
CREATE TABLE [HotelSourceMap](
[hotelsourcemapid] [bigint] PRIMARY KEY IDENTITY(1,1) NOT NULL,
[dspartnerid] [bigint] NOT NULL,
[hotelid] [bigint] NOT NULL,
[dshotelid] bigint
)
的情況是這樣的:
我想表:dspartner包含有關數據源合作伙伴詳情。 表:酒店包含酒店的詳細信息 表:HotelSourceMap包含hotels.hotelid的紀錄,dsparnter.dspartnerid
新我想更新酒店表,以便集hotels.dspartner = hotelsourcemap.dspartnerid 其中 hotels.hotelid = hotelsourcemap.hotelid 和hotelsourcemap.dspartnerid = dspartner.dspartnerid(其中dspartnerid的priorirty高)
注:-priority包含int值和最大int值將作爲considerd最高優先級。如果兩個dspartner具有相同的優先級,然後讓他們中的任何一個
SQL Server 2005中
如果有兩個(或更多)'dspartnerid'具有相同的高優先級?什麼是「高優先級」 - 數據類型是int,但這並不意味着更高的數字意味着更高的排名 - 對於我們所知的所有數據可能是相反的。 – 2010-01-23 05:18:11
優先級包含整型值,最大整型值將被視爲最大優先級。 如果兩個dspartner具有相同的優先級,那麼得到它們中的任何一個 – 2010-01-23 05:23:12
和哪個版本的SQL Server? – 2010-01-23 05:25:53