关于mysql group_concat 不能显示为空的列的其他信息

今天做项目遇到一个问题,百度好久都没找到问题所在

是酱紫的,一张表

关联的表

然后我用sql语句查询

point.pid,point.pname,GROUP_CONCAT(downsite.pname ) dname from point,downsite where point.pid=downsite.pid GROUP BY point.pid

结果却是

北京点的信息哪去了????最后请教了大神才知道,我这个sql语句两表连接方式不对,该改为外连接的方式,因为上面那种连接方式属于内连接,只有两个表相匹配的行才能出现在结果集中,而外连接就没有限制啦。

最后的sql语句为

select point.pid,point.pname,GROUP_CONCAT(downsite.pname ) dname from point
          left join downsite on point.pid=downsite.pid GROUP BY point.pid

成功

时间: 2024-10-05 18:48:55

关于mysql group_concat 不能显示为空的列的其他信息的相关文章

在Mysql中如何显示所有用户?

在Mysql中如何显示所有用户? 这是一个mysql初学者经常问到的一个问题,今天我们就带大家看看是如何在Mysql中显示所有用户的.通常我们在mysql中使用SHOW DATABASES可以显示所有的数据库,SHOW TABLES将会显示所有的数据表,那么你是不是会猜测显示所有用户的命令是SHOW USERS呢?不不不,并不是的,现在让我们一起来看看如何显示所有用户吧. 在Mysql中显示所有用户 1.登录数据库 首先,你需要使用如下命令登录到数据库,注意,必须是root用户哦~ ## mys

MySQL GROUP_CONCAT()的使用

1. MySQL GROUP_CONCAT() mysql> SELECT pub_id,GROUP_CONCAT(cate_id) -> FROM book_mast -> GROUP BY pub_id; 返回结果:(默认逗号分隔) +--------+-----------------------+| pub_id | GROUP_CONCAT(cate_id) |+--------+-----------------------+| P001 | CA002,CA004 | |

MYSQL 命令行显示乱码 解决方案

中文乱码是因为编码集不支持,所以要改变编码 先查看下设置的编码 使用如下命令 show variables like 'character%'; 在 mysql.conf (Ubuntu mysql5.5)中的 [client]区域加上 default-character-set = utf8 在[mysqld]区域加上 character_set_server = utf8 重启服务 原文地址:MYSQL 命令行显示乱码 解决方案

MySQL Workbench 不显示varbinary的值

如题,如下图 MySQL Workbench 不显示varbinary的值,布布扣,bubuko.com

mysql GROUP_CONCAT 函数 将相同的键的多个单元格合并到一个单元格

mysql GROUP_CONCAT 函数 将相同的键的多个单元格合并到一个单元格 MemberID MemberName FruitName -------------- --------------------- -------------- 1 Al Apple 1 Al Cherry Desired output MemberID MemberName FruitName ----------- -------------- ------------ 1 Al Apple, Cherry

关于Mysql group_concat的应用(把相同ID的VAL用字符‘/‘连接起来)

关于Mysql group_concat的应用 ■事先准备: CREATE TABLE TBL_GRP_CAT ( ID INT, VAL CHAR ); INSERT INTO TBL_GRP_CAT VALUES(1, 'a'); INSERT INTO TBL_GRP_CAT VALUES(1, 'b'); INSERT INTO TBL_GRP_CAT VALUES(1, 'c'); INSERT INTO TBL_GRP_CAT VALUES(2, 'd'); INSERT INTO

MySQL执行计划显示与执行过程不符合一例

一 建表和现象的过程如下 CREATE TABLE t1 (id1 INT, a1 INT, b1 INT, PRIMARY KEY(id1));CREATE TABLE t3 (id3 INT UNIQUE, a3 INT, b3 INT); INSERT INTO t1 VALUES (1, 1, NULL);INSERT INTO t3 VALUES (1, 1, NULL); mysql> select * from (select * from t1 where id1 =(selec

jQuery+Ajax+PHP+Mysql实现分页显示数据

css <style type="text/css"> #loading{ position: absolute; top: 200px; left:400px; } #container .pagination ul li.inactive, #container .pagination ul li.inactive:hover{ background-color:#ededed; color:#bababa; border:1px solid #bababa; curs

win10下MySql问题navicat显示Navicat 2003-can&#39;t connect to MYSQL server on &#39;localhost&#39;(10061)

右键命令提示符,更多>>以管理员身份运行 ,输入net start 你自己的mysql名字,一般如果安装是直接跳过的话,名字是mysql+版本,我装的版本是mysql5.7,所以名字是mysql57,希望有所帮助 win10下MySql问题navicat显示Navicat 2003-can't connect to MYSQL server on 'localhost'(10061) 原文地址:https://www.cnblogs.com/WXfresh/p/8665150.html