0

是否可以在一个查询中以某种方式使用 JOIN 对 2 个不同的表进行两次搜索并收集它们重叠的位置?

这是人类术语的思考过程:(注意,我有两个表格;个人资料和发票)

  • 从发票表中查找所有已付款列填充“已付款”的行

  • 获取所有对应的“profileid”列号

  • 删除重复项(或多次出现)

  • 使用论文 ID 在配置文件表中查找所有配置文件

  • 对这些配置文件进行进一步搜索,例如 where firstname LIKE '%$firstname%' 等

像这样的东西:

$query = "SELECT profileid FROM invoicetable WHERE paidcolumn LIKE '%$paid%' INNER JOIN profiletable ON 
invoicetable.profileid=profiletable.id WHERE (profiletable.firstname LIKE '%$firstname%' AND profiletable.email LIKE ........)";

我感觉我快到了...

还是我必须先通过数组来完成?

任何帮助是极大的赞赏。

4

1 回答 1

0

尝试这个:

SELECT DISTINCT I.profileid
FROM invoicetable I
    INNER JOIN profiletable P
        ON I.profileid=P.id
WHERE P.firstname LIKE '%$firstname%'
         AND I.paidcolumn LIKE '%$paid%'
         AND P.email LIKE ........
于 2013-02-16T15:08:27.123 回答