关于MySQL中select (select...) from ... 查询

直接上例子:

新建A表结构及数据如下:

新建B表结构及数据如下:

其中:B表和A表是一对多的关系(1:n),B表的主键是A表的外键

SELECT A.ha,
(SELECT B.haha FROM B WHERE B.id2 = A.id2 ) AS haha
FROM A;

结果为:

这意味着:在A表中取字段,同时取B表中的字段作为其中一个字段显示。

其中,子句的查询结果并不影响原来A的记录条数。比如:

SELECT A.ha,
(SELECT B.haha FROM B WHERE B.id2 = A.id2 AND B.haha = "1") AS haha
FROM A;

结果为:

原文地址:https://www.cnblogs.com/mallocLNode/p/7502974.html