如何将这个 json feed 实现到数据库结构中?
How to implement this json feed into a database structure?
我目前正在开发一个应用程序,我要在其中添加客户可以购买产品的商店。现在我有一个包含商店的 json 提要,我可以从中提取所有商店的数据。
phone、邮政编码和地址等字段是标准字段,易于实施。但是 json 提要还为我提供了商店 open/close.
工作日的数组
我没有将类似的东西实现到数据库中的经验。我将如何实施呢?我认为仅将数组转储到单个字段中可能不是一个好主意,但我不必再次想到它,因为它只是通过 api 调用从 json 提要进行更新。
我可能会创建类似 opening_hours table 的东西。我可能会使用:
- store_id
- 工作日
- opening_time
- closing_time
但是每家商店的工作日为 1、2、3、4、5、6,对应于星期一到星期六。这可能会导致大量重复数据,但我想根本没有办法解决这个问题?
希望有人能指导我正确的方向。
json 供稿示例:
openinghours: [
{
closing: "18:00",
weekday: 0,
opening: "12:00"
},
{
closing: "18:00",
weekday: 1,
opening: "09:00"
},
{
closing: "18:00",
weekday: 2,
opening: "09:00"
},
{
closing: "18:00",
weekday: 3,
opening: "09:00"
},
{
closing: "18:00",
weekday: 4,
opening: "09:00"
},
{
closing: "17:30",
weekday: 5,
opening: "09:00"
},
{
closing: null,
weekday: 6,
opening: null
}
],
lng: 4.6217623,
id: 5014
首先,您需要为您的应用存储这些数据吗?如果您永远不会使用它们,完全可以接受 table 忽略 opening/closing 小时。
如果您要使用此数据,它是否仅用于显示?如果是这样,您可以将 JSON 数组以其原始格式存储在 "hours" 字段中以供存储 table,并在需要时对其进行解码。如果数据需要 可搜索 ,那么是的,您可能会创建一个一对多 table,如上所述。或者,您可以创建一个包含每天列的 table:
store_id mon_op mon_clos tue_op tue_clos . . . sat_op sat_clos
这样可以避免一对多的问题,但实际上并没有那么清晰。但是,无论您选择哪种格式,我仍然建议将小时字符串转换为适当的 date/time 格式,以便于搜索。
我目前正在开发一个应用程序,我要在其中添加客户可以购买产品的商店。现在我有一个包含商店的 json 提要,我可以从中提取所有商店的数据。
phone、邮政编码和地址等字段是标准字段,易于实施。但是 json 提要还为我提供了商店 open/close.
工作日的数组我没有将类似的东西实现到数据库中的经验。我将如何实施呢?我认为仅将数组转储到单个字段中可能不是一个好主意,但我不必再次想到它,因为它只是通过 api 调用从 json 提要进行更新。
我可能会创建类似 opening_hours table 的东西。我可能会使用:
- store_id
- 工作日
- opening_time
- closing_time
但是每家商店的工作日为 1、2、3、4、5、6,对应于星期一到星期六。这可能会导致大量重复数据,但我想根本没有办法解决这个问题?
希望有人能指导我正确的方向。
json 供稿示例:
openinghours: [
{
closing: "18:00",
weekday: 0,
opening: "12:00"
},
{
closing: "18:00",
weekday: 1,
opening: "09:00"
},
{
closing: "18:00",
weekday: 2,
opening: "09:00"
},
{
closing: "18:00",
weekday: 3,
opening: "09:00"
},
{
closing: "18:00",
weekday: 4,
opening: "09:00"
},
{
closing: "17:30",
weekday: 5,
opening: "09:00"
},
{
closing: null,
weekday: 6,
opening: null
}
],
lng: 4.6217623,
id: 5014
首先,您需要为您的应用存储这些数据吗?如果您永远不会使用它们,完全可以接受 table 忽略 opening/closing 小时。
如果您要使用此数据,它是否仅用于显示?如果是这样,您可以将 JSON 数组以其原始格式存储在 "hours" 字段中以供存储 table,并在需要时对其进行解码。如果数据需要 可搜索 ,那么是的,您可能会创建一个一对多 table,如上所述。或者,您可以创建一个包含每天列的 table:
store_id mon_op mon_clos tue_op tue_clos . . . sat_op sat_clos
这样可以避免一对多的问题,但实际上并没有那么清晰。但是,无论您选择哪种格式,我仍然建议将小时字符串转换为适当的 date/time 格式,以便于搜索。