我正在设计出租车服务的数据库。有一张出租车服务的详细信息表。连接两张表
* cab_services *
+---------------------+
| SID | Name |
|---------------------|
| S001 | ABC Taxi |
| S002 | XYZ Cabs |
| S003 | MN Taxi |
| S004 | OP Cabs |
|_______|_____________|
而且还有另外一个表中的位置。
位置
+-----------------------------------+
| LID | Code | Location |
|----------------|------------------|
| L001 | CO | Akarawita |
| L002 | CO | Angamuwa |
| L003 | CO | Batawala |
| L004 | CO | Avissawella |
| L005 | CO | Battaramulla |
| L006 | GQ | Ambepussa |
| L007 | GQ | Bemmulla |
| L008 | GQ | Biyagama |
| L008 | GQ | Alawala |
| L010 | GQ | Andiambalama |
| L011 | GQ | Biyagama IPZ |
| L012 | KT | Bellana |
| L013 | KT | Bolossagama |
| L014 | KT | Bombuwala |
| L015 | KT | Alutgama |
| L016 | KT | Alubomulla |
|_______|________|__________________|
注意,他们是根据地区分类。 (CO,GQ,KT)每个地区有多个城镇。
出租车服务可能在多个地区提供服务。一个地区可能有多个出租车服务。它的种类很多很多。
我试图连接cab_services表与位置表。但我无法弄清楚如何。 如果只有一个服务在区域中,我会这样做。
+-------+-------------+---------+
| SID | Name | Locs |
|-------+-------------+---------|
| S001 | ABC Taxi | CO |
|_______|_____________|_________|
但就像我之前说过的,服务可以有很多地区。
+-------+-------------+---------+
| SID | Name | Locs |
|-------+-------------+---------|
| S001 | ABC Taxi | CO, KT |
|_______|_____________|_________|
这会违反1NF。
我希望能够像说的情况下得到结果,如果用户使用位置名称进行搜索,他应该获得该地区的出租车服务。
我需要在我的数据库中做什么更改,表结构来完成这个任务?
请让我知道如果有一部分是令人困惑的,我会尽我所能进一步澄清它。我在解释事情方面很糟糕。谢谢。
+1对于您的问题的出色而谨慎的表达。 – stakx
我同意@stakx,但我宁愿在ASCII文本/降价看到这些图像。 – Oded
谢谢@stakx和Oded。我编辑了这篇文章,并用ascii表格结构替换了图片。 – Isuru