如何联接两个mysql表

吉辛·瓦吉斯(Jithin Varghese)

我有两个mysql表。IE,

  1. db_post
  2. 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

我的问题是,如何根据unique_keytable中的字段来混合这两个db_post

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

id  ||  name  ||  unique_key  ||  pub

3       dee         unkey3        demo2
2       Rah         unkey3        demo1 -> Result from table db_like
Xebax

我不明白为什么@tango给出的答案已经被接受,查询没有给出期望的输出,它返回以下内容:

id  ||  name  ||  unique_key  ||  id
3       dee       unkey3          1

实际上,我看不到如何通过一次联接将这两个表联接在一起,从而获得在问题中编写的输出。

您可以使用使用unique_key的表进行联接,如下所示:

select db_post.id, db_post.name, db_post.unique_key, db_post.pub
from db_post
left join db_like on db_post.unique_key = db_like.unique_key
where db_post.unique_key = 'unkey3';

然后获得所需输出的第一行:

id  ||  name  ||  unique_key  ||  pub
3       dee       unkey3          demo2

您可以使用db_post.id = db_like.post_id以下方法将两个表合并

select db_post.id, db_post.name, db_like.unique_key, db_post.pub
from db_post
left join db_like on db_post.id = db_like.post_id
where db_like.unique_key = 'unkey3';

然后获得所需输出的第二行:

id  ||  name  ||  unique_key  ||  pub
2       Rah       unkey3          demo1

要获得两行,您必须使用union

select db_post.id, db_post.name, db_post.unique_key, db_post.pub
from db_post
left join db_like on db_post.unique_key = db_like.unique_key
where db_post.unique_key = 'unkey3'
union
select db_post.id, db_post.name, db_like.unique_key, db_post.pub
from db_post
left join db_like on db_post.id = db_like.post_id
where db_like.unique_key = 'unkey3';

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在MySQL中联接这两个表

来自分类Dev

mysql如何联接两个以上的表

来自分类Dev

如何在MySQL中联接这两个表

来自分类Dev

MySQL联接两个表查询

来自分类Dev

MySQL联接查询两个表

来自分类Dev

mysql联接两个表的问题

来自分类Dev

MySQL联接两个表查询

来自分类Dev

如何外部联接两个表?

来自分类Dev

SQLite如何联接两个表

来自分类Dev

如何间接联接两个表

来自分类Dev

如何外部联接两个表?

来自分类Dev

PHP MySQL使用条件联接联接两个表

来自分类Dev

如何从MySQL中的外部联接表(两个以上的表)中获取值

来自分类Dev

基于相互喜欢在MySQL中联接两个表

来自分类Dev

MySQL用逗号分隔值联接两个表

来自分类Dev

Codeigniter活动记录类联接两个mysql表

来自分类Dev

MySql:更新与两个表上的内部联接挂起

来自分类Dev

尝试完全联接MySql中的两个表

来自分类Dev

MySQL在多个记录上联接两个表

来自分类Dev

基于相互喜欢在MySQL中联接两个表

来自分类Dev

使用id mysql左联接两个表

来自分类Dev

在MySQL中使用子查询联接两个表

来自分类Dev

在两个表MYSQL上左联接和求和

来自分类Dev

如何在MySql中联接两个表时创建视图

来自分类Dev

如何通过部分匹配来联接两个表

来自分类Dev

如何从两个联接表中查找计数

来自分类Dev

如何使用Hibernate联接两个表的字段?

来自分类Dev

如何在Hbase中联接两个表

来自分类Dev

联接两个表时如何避免重复值?