我正在构建一个类似于facebook上的广告投放系统。基本上,我的客户可以创建广告,并根据我们将不断从他们那里收集的位置和个人信息,将广告定向到特定的成员。
目前它是这样设计的..
member
-----
id
fname
lname
country_id
state_id
region_id
postcode_id
etc..我知道我只需要邮政编码和在邮政编码表中查找它..但是我有大约50个邮政编码表格,每个国家一个..对我来说更容易..。
member_profile
-----
id
mem_id
bio_q (id linked to varchar .. eg. 'profession')
bio_a
advert
-------
id
client_id
ad_title
ad_line
start_date
end_date
status
etc..
advert_target
-----
id
advert_id
fk_id
type例如上述数据..
1, 1, 1, 'state'
2, 1, 2, 'state'
3, 1, 5, 'profession'我想的一种方法是做一整堆的联合语句……不确定这是不是最有效的方法..在指导方面的任何帮助都将不胜感激..
谢谢
一个
发布于 2011-03-16 20:01:24
通常,这种应用程序引入了“细分市场”的概念,将用户分配到细分市场,并将广告投放到细分市场。
因此,您可以将给定用户分配到5个部分:“居住在欧洲”,“居住在意大利”,“居住在罗马”,“居住在邮政编码x的5公里内”,“至少18岁”,
然后,你可能会有针对“生活在意大利”,“至少18岁”,“至少访问过网站3次”的广告;我们的样本用户在3个标准中得了2分,所以只有当没有更合格的男孩出现时,才会显示广告。
您希望在常规数据库作业中预先填充您的段;即时执行此操作将使您的系统即使是中等级别的流量也会受到影响。
https://stackoverflow.com/questions/5324786
复制相似问题