我有一个如下所示的MySQL表,其中包含数千个广告活动。
+---------+--------------+------------------+--------------+-------------------+---------------------+
| int: id | string: name | json: countries | json:regions | json: platforms | json: browsers |
+---------+--------------+------------------+--------------+-------------------+---------------------+
| 1 | Uber Android | ["US","UK","DE"] | | ["Android"] | |
+---------+--------------+------------------+--------------+-------------------+---------------------+
| 2 | Game X | ["US"] | | ["Android","iOS"] | ["Chrome","Safari"] |
+---------+--------------+------------------+--------------+-------------------+---------------------+
| 3 | Game Y | | | ["Android"] | |
+---------+--------------+------------------+--------------+-------------------+---------------------+
在此表中,空列表示它支持所有选项(例如,空国家表示该广告系列适用于所有国家/地区)。所以基本上当我找到访问者时,我可以提取国家/地区代码,地区,平台,浏览器等用户详细信息,并希望找到与用户匹配的所有合适的广告系列。
所以我的问题是,存储此数据以查询每个访问者以获取所有匹配的广告系列ID列表的最佳方法是什么?