我有一个表单来预订多个日期的广告,这些表单是使用表单中的日历选择的,然后以JSON格式发布。一个例子是:
[20110915, [20110918, 20110925], 20110926, 20110927]
但是我在为每个广告存储此json字符串时遇到问题。
我不想将每个日期分别存储在不同的表中(这会使db变得笨重)。
答案 0 :(得分:0)
您如何建议将此日期存储与广告的关系?
您应该将它们存储在关系表中,该关系表将包含广告的ID和预订日期。
ad_id | booking_date
PRIMARY KEY
将是化合物(ad_id, booking_date)
。
示例数据将是:
ad_id | booking_date
---------------------------
1 | 2011-09-15
1 | 2011-09-18
1 | 2011-09-19
1 | 2011-09-20
1 | 2011-09-26
2 | 2011-09-27
2 | 2011-09-30
如何使用其中一个日期选择广告。
SELECT *
FROM ads a
INNER JOIN ad_bookings ab
ON a.ad_id = ab.ad_id
AND ab.booking_date = '2011-09-30'