大家好我已经inherirted一个设计不当的数据库,我需要从3个表从许多多的表的SELECT许多关系
特许经营
Id(Int, PK)
FrID (varchar(50))
FirstName (varchar(50))
LastName (varchar(50))
商店
获得一些信息Id (Int, PK)
FrID (varchar(50))
StoreNumber (varchar(50))
StoreName
Address
定价
Id (int, PK)
StoreNumber (varchar(50))
Price1
Price2
Price3
和数据
ID, FrID ,FirstName,LastName
1, 10 ,John Q , TestCase
2, 10 ,Jack Q , TestCase
3, 11 ,Jack Q , TestCase
ID, FrID, StoreNumber , StoreName , Address
10, 10 , 22222 , TestStore1, 123 Main street
11, 10 , 33333 , TestStore2, 144 Last Street
12, 10 , 44444 , TestStore2, 145 Next Street
13, 11 , 55555 , Other Test, 156 Other st
ID, StoreNumber, Price1, Price2, Price3
1, 22222 , 19.99, 20.99 , 30.99
2, 33333 , 19.99, 20.99 , 30.99
3, 44444 , 19.99, 20.99 , 30.99
4, 55555 , 19.99, 20.99 , 30.99
这里是我做了什么
SELECT F.FirstName,F.LastName,F.FrID , S.StoreNumber,S.StoreName,S.Address,
P.Price1,P.Price2,P.Price3
FROM Franchisee F
JOIN Store S on F.FrID = S.FrID
JOIN Pricing P on P.StoreNumber = S.StoreNumber
这部分作品,但我最终有很多重复的,例如杰克Q被列为他的商店加上John Q所在的每家商店。无论如何要解决这个问题,重新设计一个数据库。
但约翰和杰克都属于'10'专营ID ..所以他们的商店似乎是共同的。 –
给我们一个您希望找回的数据样本。数据结构化的方式目前只有一个查询会产生重复。 –
@Gaby,感谢您的编辑,我注意到并试图解决它,但是您击败了我。 – Ksliman