MySQL根据第二个表

时间:2015-08-24 16:03:32

标签: mysql

我遇到了一个问题,我很难找到解决办法。我正在与MySQL合作,看看它是否适合我所工作的公司,到目前为止,我对它的能力感到非常兴奋。然而,我遇到了障碍,我希望有人可以帮助我!

我的数据库中有两个表,一个用于承包商,另一个用于贷款号码。我的承包商表中包含他们的姓名,联系方式以及他们愿意执行工作的区域等信息。这些区域由(县,州)格式化,如果有多个,则它们是这样分开的:

Anne Arundel,MD; Baltimore,MD; Calvert,MD;

但是,有些承包商愿意在整个州内开展工作。对于这种情况,还有另一列标记为状态,其格式如下:

VA; OH; PA;

我的贷款表包含一个贷款编号,上面是(县,州),(但任何给定贷款只有一个条目),第三个州列是多余的,可能会被取出。< / p>

我一直在编写一个程序来管理我们所有的承包商和贷款号码,我需要能够生成一份承包商名单,这些承包商可以为任何给定的贷款号码工作。这是我到目前为止使用的查询:

SELECT first_name, last_name FROM contractors INNER JOIN loans ON contractors.county_state LIKE CONCAT('%', loans.county_state, ';%') WHERE loans.loan_number = <LOAN NUMBER GOES HERE>

这很有效,但它无法匹配覆盖整个州的承包商。如何在那里放置包含全州覆盖承包商的OR条款?

OR contractors.states LIKE CONCAT('%', loans.state, ';%')

这样的事情是可能的,还是我必须改变方向?

提前感谢您的帮助!

0 个答案:

没有答案