Mysql 列限制。使用一个 table 还是创建一个新的?
Mysql columns limit. Using one table or create a new one?
我想在 mysql 数据库中存储行程详细信息。存储完这些记录后,我想对这些记录进行某种查找和排序操作。
喜欢:
....where from_city ='pune' OR from_pin ='411015' OR from_state ='MH' AND
to_city ='pune' OR to_pin ='411015' OR to_state ='MH' AND Ddeparting_date ='2015-08-06'...
但我很困惑是否必须将这些记录仅存储在 1 个 table (tbl_trip) 上,或者我是否必须额外制作 1 个 table (tbl_trip_extra_info) 让我可以轻松地进行搜索和排序操作.
我不想让我的数据库太重。
这种情况最好的方法是什么有人指导我吗?
tbl_trip
trip_id | from | to | pickup_points | departing_date |..3 more
1 | address from1 | **** | ------- | 2015-08-06 |..3 more
2 | address from2 | ***** | ----- | 2015-08-07 |..3 more
.
.
tbl_trip_extra_info
trip_id| from_city | from_state| from_pin| from_rout | to_city | to_state| to_pin | to_rout
1 | pune |MH | 411015 | alandi road | pune |MH | 411015 | alandi road
2 | mumbai |MH | 412006 | patil road | pune |MH | 411015 | alandi road
.
.
你应该问自己的问题是:
这是一对一关系还是一对多关系?
如果你需要一个人和一次旅行,那么你不能为每个人安排超过一次的旅行,那么关系就是一个,所以制作一个table和一个包含旅行的列。
如果你需要一个人有更多的行程,当然是一个(人)对许多(行程)所以你应该有一个table个人和一个行程。
在旅途中的那一点 table 您可以搜索人员 ID 或类似信息。
如果只是行程和搜索行程的问题,通常您只会使用一个 table。您可以搜索旅行,一旦获得搜索结果,您就可以按照自己的方式对它们进行排序。
加法
不用担心 MySQL table 的列数限制,该限制设置为 4096 列,所以应该没问题。 (参见 here)
只要确保设置正确的索引,性能就不会降低。
我想在 mysql 数据库中存储行程详细信息。存储完这些记录后,我想对这些记录进行某种查找和排序操作。 喜欢:
....where from_city ='pune' OR from_pin ='411015' OR from_state ='MH' AND
to_city ='pune' OR to_pin ='411015' OR to_state ='MH' AND Ddeparting_date ='2015-08-06'...
但我很困惑是否必须将这些记录仅存储在 1 个 table (tbl_trip) 上,或者我是否必须额外制作 1 个 table (tbl_trip_extra_info) 让我可以轻松地进行搜索和排序操作.
我不想让我的数据库太重。
这种情况最好的方法是什么有人指导我吗?
tbl_trip
trip_id | from | to | pickup_points | departing_date |..3 more
1 | address from1 | **** | ------- | 2015-08-06 |..3 more
2 | address from2 | ***** | ----- | 2015-08-07 |..3 more
.
.
tbl_trip_extra_info
trip_id| from_city | from_state| from_pin| from_rout | to_city | to_state| to_pin | to_rout
1 | pune |MH | 411015 | alandi road | pune |MH | 411015 | alandi road
2 | mumbai |MH | 412006 | patil road | pune |MH | 411015 | alandi road
.
.
你应该问自己的问题是:
这是一对一关系还是一对多关系?
如果你需要一个人和一次旅行,那么你不能为每个人安排超过一次的旅行,那么关系就是一个,所以制作一个table和一个包含旅行的列。
如果你需要一个人有更多的行程,当然是一个(人)对许多(行程)所以你应该有一个table个人和一个行程。
在旅途中的那一点 table 您可以搜索人员 ID 或类似信息。
如果只是行程和搜索行程的问题,通常您只会使用一个 table。您可以搜索旅行,一旦获得搜索结果,您就可以按照自己的方式对它们进行排序。
加法
不用担心 MySQL table 的列数限制,该限制设置为 4096 列,所以应该没问题。 (参见 here)
只要确保设置正确的索引,性能就不会降低。