select TableA.idcard,TableA.prefix,TableA.name,TableB.Age,TableB.Sex,TableB.Address
from TableA,TableB where concat(TableA.idcard,TableA.name)=concat(TableB.idcard,TableB.name)
select A.IDCard,A.FullName,B.Age,B.Gender,B.Address
From #TableA as A
Left Join (
Select SB.IDCard,SB.FullName,B_.Age,SB.Gender,SB.Address
From #TableB As SB
Inner Join (
Select Distinct IDCard,Max(Age) as Age From #TableB
Group By IDCard
) as B_ on B_.IDCard =SB.IDCard and B_.Age = SB.Age
) as B on B.IDCard = A.IDCard
1 ถ้าแน่ใจว่า id_card ใน ตาราง a ทุกรายการ มีอยู่ใน ตาราง B
และ id_card ใน ตาราง B ทุกรายการ มีอยู่ใน ตาราง A
หรือ ต้องการ เฉพาะ id_card ที่เหมือนกัน
select a.ฟีลด์ที่ต้องการ, b.ฟีลด์ที่ต้องการ from a, b where a.id_card = b.id_card
group by a.id_card
2 ถ้าไม่ใช่ ก็ต้องเลือกเอาว่าจะ เอา ตารางไหนเป็นตารางหลัก
select a.ฟีลด์ที่ต้องการ, b.ฟีลด์ที่ต้องการ from a left join b on a.id_card = b.id_card
group by a.id_card
หรือ
select a.ฟีลด์ที่ต้องการ, b.ฟีลด์ที่ต้องการ from b left join a on a.id_card = b.id_card
group by b.id_card