基于2列的mysql连接

时间:2015-10-20 05:36:58

标签: mysql sql join

如何基于组合2列

来连接2个表

表1

Name       Bill No    Amount
----      ----------  --------
Ravi C      125        1000
Ravi Kumar  475        5000

这是我的表2

Name          Amount
-----        --------
Ravi c         1000
Ravi Kumar     5000

我希望根据名称和账单金额加入这两个表。

这是我的查询

select b.PatientName,b.FinalAmt,MRNO,BILLNO from lekhi a LEFT join tpa b ON a.Name LIKE CONCAT('%', b.PatientName, '%') OR a.AMT=b.FinalAmt

请帮助我获得预期的结果

Name       Bill No    Amount
----      ----------  --------
Ravi C      125        1000
Ravi Kumar  475        5000

2 个答案:

答案 0 :(得分:1)

如果两个表中的2个字段包含相同的值:

select * from t1 left join t2 on t1.name=t2.name and t1.amount=t2.amount

如果名称字段中的字母大小写有差异:

select * from t1 left join t2 on lower(t1.name)=lower(t2.name) and t1.amount=t2.amount

如果以上内容对您不起作用,那么您必须提供有关源数据和预期结果的更多详细信息。

答案 1 :(得分:0)

SELECT t1.`Name`,t1.`Bill No`,t1.`Amount`,t1.`Amount`
FROM table1 t1
JOIN table2 t2 ON (t1.`Amount`=t2.`Amount`) AND (UPPER(t1.`Name`)=UPPER(t2.`Name`));