[英]MYSql left join two tables with column different values
您可以嘗試以下聯接:
SELECT *
FROM tbl_member_registration t1
LEFT JOIN tbl_phone t2
ON t1.mem_id = CAST(SUBSTRING_INDEX(t2.parent_code, '_', -1) AS SIGNED);
展望未來,您可能希望清理表,以便可以使用equal =
設置連接條件。 當將索引包裝在對SUBSTRING_INDEX
的丑陋調用中時,就parent_code
在parent_code
列上使用索引。
我沒有檢查過,但是您可以嘗試使用。
select *
from tbl_member_registration tmr join tbl_phone tp
on tp.parent_code = concat('mem_',tmr.mem_id)
有關更多參考詳細信息: CONCAT
希望對您有所幫助。
SELECT *
FROM tbl_member_registration t1
INNER JOIN tbl_phone t2
ON t1.mem_id = SUBSTR(t2.parent_code,5, 2);
select tbl_phone.*, tbl_member_registration.*
from tbl_member_registration.mem_id
left join tbl_phone on tbl_member_registration.mem_id = (select substring(tbl_phone.parent_code, 5,2) );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.