如何在左外连接中使用L​​ike

时间:2014-08-29 08:55:16

标签: mysql sql

SELECT *
FROM pay_invoice_list p
LEFT outer JOIN paimentDetl d
on p.invoice_no= d.invoiceNo and p.invoice_no LIKE ' %$temp%'
ORDER BY iid DESC

这是我的查询。但它没有正常工作。拖车表未正确连接。以及"喜欢"没有工作。

5 个答案:

答案 0 :(得分:2)

SELECT *
FROM pay_invoice_list p
LEFT outer JOIN paimentDetl d
on p.invoice_no= d.invoiceNo 
Where p.invoice_no LIKE ' %$temp%'
ORDER BY iid DESC

您需要做的就是在查询中添加WHERE。

答案 1 :(得分:0)

试试这个

SELECT *
FROM pay_invoice_list p
LEFT outer JOIN paimentDetl d
on p.invoice_no= d.invoiceNo
where p.invoice_no LIKE ' %$temp%'
ORDER BY iid DESC

答案 2 :(得分:0)

如果您要过滤join (此处为paimentDetl)的正确表格,则只应在left outer join语句中进行过滤。如果要过滤左表(此处为pay_invoice_list),则应在where clause中添加过滤条款。

SELECT *
FROM pay_invoice_list p
LEFT outer JOIN paimentDetl d ON p.invoice_no= d.invoiceNo
WHERE p.invoice_no LIKE '%$temp%'
ORDER BY iid DESC

答案 3 :(得分:0)

试试这个

SELECT * 
FROM pay_invoice_list p 
    LEFT outer JOIN paimentDetl d ON p.invoice_no = d.invoiceNo 
WHERE p.invoice_no LIKE ' %$temp%' 
ORDER BY iid DESC

答案 4 :(得分:0)

将p.invoice_no放在WHERE子句中。

SELECT *
FROM pay_invoice_list p
LEFT outer JOIN paimentDetl d on p.invoice_no= d.invoiceNo 
WHERE p.invoice_no LIKE ' %$temp%'
ORDER BY iid DESC

这将返回来自pay_invoice_list的所有记录,其中invoice_no LIKE' $%TEMP%'以及发票编号匹配的paimentDetl中的所有记录。