mysql group_concat问题

时间:2012-04-04 12:21:16

标签: mysql group-concat

我只是想知道MYSQL GROUP_CONCAT的功能是否可以返回这种类型的数据。这是一个场景

SELECT GROUP_CONCAT(marks) AS `i need only 40 int in this column`  FROM marks

当我执行此查询时,结果将显示为此

enter image description here

需要的结果40

3 个答案:

答案 0 :(得分:2)

试试这个:

select group_concat(m.marks) from 
    ( select distinct marks from marks limit 40 ) m

答案 1 :(得分:1)

建议优先:规范化数据库表 - 字段应该只包含一个值。

现在,针对您的具体问题的解决方案:MySQL具有FIND_IN_SET功能,可以执行您想要的操作:

SELECT marks
FROM marks
WHERE FIND_IN_SET('40', marks)

答案 2 :(得分:0)

您的语法

SELECT GROUP_CONCAT(marks) AS `i need only 40 int in this column`  FROM marks

工作正常。您正在提供GROUP_CONCAT(marks)名称  i need only 40 int in this column,因此它会通过语法显示您所说的内容。

  

“结果需要40”

当您使用group_concat并且想要记录标记为40的位置时,它意味着什么?为什么不使用像

这样的查询
select * from table_name where marks='40'

如果group_concat是一个编译,那么使用

SELECT GROUP_CONCAT(marks) AS `i need only 40 int in this column`  FROM marks where marks='40'