这更多的是一个“方法”问题,我还没有得到代码。但我对SQL和php还不太熟悉,希望能够智能地解决这个问题。
场景如下:
我有一个名为“捐赠”的表,每个表在名为AREA的列中正好有一个字符串值。区域可以有九个预定值(东北、西北、市中心等)中的任何一个。
我还有一张志愿者表,每个表都明确了他们愿意前往哪些地区,帮助领取捐款。对于每个志愿者,我有9列,每个列有1或0,对应于上面列出的9个区域(西北、东北、东北等)
我想运行一个查询、一系列查询或php/sql组合,在这里,我可以搜索所有活动的捐款,获得他们所在的区域,然后查询志愿者表,并返回一个电子邮件地址列表,仅适用于那些愿意前往其中一个或多个区域的志愿者。
如有任何帮助,我们将不胜感激。(顺便说一下,这两个表之间没有共享的键值。)

最佳答案

我会考虑将区域作为自己的表(ID,Name)。然后为捐赠表添加AreaID(ForeignKey)而不是Area string列。
对于志愿者区域协会,我会考虑制作一个名为志愿者区域的链接表,它有一个志愿者ID的结构,AreaID。
编写一些脚本以获取现有数据并将其转储到新格式中是很简单的。
那你就可以。。。
获得积极的捐赠

SELECT * FROM Donations WHERE Active = 1

从选定区域获取电子邮件
SELECT Email FROM Volunteers v
JOIN VolunteerAreas va ON va.VolunteerID = v.ID
WHERE va.AreaID = @AreaID

08-26 01:15
查看更多