我有两个mysql表。即


db_post
db_like


// db_post

id  ||  name  ||  username  ||  unique_key  ||  pub

1       Jit        jit11         unkey1         demo
2       Rah        rah11         unkey2         demo1
3       dee        dee11         unkey3         demo2


// db_like

id  ||  post_id  ||  unique_key

1          2           unkey3


我的问题是,如何根据表db_post中的unique_key字段将这两个表混合使用。

//输出应如下所示。 (WHERE unique_key ='unkey3')

id  ||  name  ||  unique_key  ||  pub   ||  post_id

3       dee         unkey3       demo2       {null}
2       Rah         unkey2       demo1        2
1       Jit         unkey1       demo        {null}


id中的db_post字段和post_id中的db_like字段应匹配。

最佳答案

这需要左联接,联接条件为db_unique_key = db_like.unique_key and db_like.unique_key='unkey3')

select
p.id,
p.name,
p.unique_key,
p.pub,
l.post_id
from db_post p
left join db_like l on l.unique_key = p.unique_key and l.unique_key = 'unkey3'
order by p.id desc

关于php - 如何使用公共(public)字段在mysql中联接两个表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31939642/

10-10 10:45