mysql - 在一个mysql查询中使用concat和group_concat函数

标签 mysql

大家好,是否可以在我尝试使用的同一查询中使用 GROUP_CONCAT 和 CONCAT 函数

SELECT GROUP_CONCAT(CONCAT(idmaterial,percent)) as 'material' FROM a_m where idarticle=1

在一行一列中获得这样的结果

material
----------
1 5%10 6%80 1%10

请帮助我提出您的想法,非常感谢,这是我的 table ,非常感谢您的帮助

    idarticle |idmaterial| percent
    ---------- ---------- ----------
    1              5        10
    ---------- ---------- ----------
    1              6        80    
    ---------- ---------- ----------
    1              1        10
    ---------- ---------- ----------
    2              1        90
    ---------- ---------- ----------
    2              2        10
    ---------- ---------- ----------

最佳答案

GROUP_CONCATGROUP BY 搭配使用:

SELECT idarticle, 
  GROUP_CONCAT( CONCAT( idmaterial, '%', percent ) SEPARATOR ' ' ) as materials
FROM a_m
GROUP BY idarticle

要放入一列,您可以使用:

SELECT CAST(CONCAT( idarticle, ' ', 
  GROUP_CONCAT( CONCAT( idmaterial, '%', percent ) SEPARATOR ' ' ) ) AS CHAR) as material
FROM a_m
GROUP BY idarticle

关于mysql - 在一个mysql查询中使用concat和group_concat函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9332803/

相关文章:

MySQL 根据结果选择

c# - 如何计算数据库中具有 3 个不同值的列中的数据并将其显示在图形中?

sql - PHP 中正确的 sql 语句语法是什么?

php - 将html选择表单的值插入mysql数据库

php - 从 SQL select sum group by 到 Yii 框架中的 Active Record 2

mysql - 在 MySQL 中编写 CHECK 约束的全部意义是什么?

PHP:为 2 个不同的数据库创建 2 个 PDO,一个阻止第二个

php - 使用 PHP 显示来自 MySQL 数据库的图像

php - Laravel 5. DB::select 工作原理

php - 如何将Excel中的空白值插入具有唯一键的列并将其输入为NULL?