草庐IT

MySql GROUP_CONCAT 与 GROUP BY 每组第 n 行

coder 2023-10-16 原文

SQL fiddle :http://sqlfiddle.com/#!9/e7f72/2

假设一个名为 testt 的表中有 10 条记录(id 不是 null 自动递增)。如果我要这样做

SELECT GROUP_CONCAT(id) FROM testt

我希望结果看起来像

1,2,3,4,5,6,7,8,9,10

我怎样才能让结果看起来像这样:

1,2

3,4

5,6

7,8

9,10

最佳答案

您需要按 id 的函数进行分组。像这样:

select group_concat(id order by id)
from testt
group by floor((id - 1) / 2)

关于MySql GROUP_CONCAT 与 GROUP BY 每组第 n 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34756268/

有关MySql GROUP_CONCAT 与 GROUP BY 每组第 n 行的更多相关文章

  1. ruby-on-rails - 在 Ruby on Rails 中获取每组的前 N ​​个项目 - 2

    我有一个包含“日期”和“频率”字段的模型(频率是一个整数)。我正在尝试获取每个日期的前5个频率。本质上我想按日期分组,然后获得每组的前5名。到目前为止,我只检索组中的前1名:Observation.channel("channelOne").order('date','frequencydesc').group(:date).having('frequency=MAX(frequency)')我想要MAX(frequency)加上第二、第三、第四和第五大PERDATE。抱歉,如果这真的很简单或者我的术语不正确;我刚开始使用Rails:) 最佳答案

  2. ruby - 如何在 ARel 中使用 CONCAT() 等函数? - 2

    有没有办法让ARel将列名写入(经过净化、可能别名等)CONCAT()和其他SQL函数?这是howtodoitwithAVG()...?>name=Arel::Attribute.new(Arel::Table.new(:countries),:name)=>#population=Arel::Attribute.new(Arel::Table.new(:countries),:population)=>#Country.select([name,population.average]).to_sql=>"SELECT`countries`.`name`,AVG(`countries`

  3. ruby-on-rails - 在 Rails 4 中使用 `CONCAT` w/Arel - 2

    我有一个User模型,它具有first_name和last_name属性。使用Arel我想使用CONCAT执行全名搜索。我已经阅读了HowdoIusefunctionslikeCONCAT(),etc.inARel?上的帖子这表明这是可能的,但我不能完全正确地使用语法。到目前为止我有classUser 最佳答案 对于最新的Arel,需要使用Arel::Nodes.build_quoted('')而不仅仅是String('')。所以现在的答案是:SEPARATOR=Arel::Nodes.build_quoted('')Arel::N

  4. ruby - Python itertools 的 Ruby 等价物是什么,尤其是。组合/排列/groupby? - 2

    Python的itertools模块提供了很多关于使用生成器处理可迭代/迭代器的好东西。例如,permutations(range(3))-->012021102120201210combinations('ABCD',2)-->ABACADBCBDCD[list(g)fork,gingroupby('AAAABBBCCD')]-->AAAABBBCCDRuby中有哪些等价物?等效的,我的意思是快速和内存高效(Python的itertools模块是用C编写的)。 最佳答案 Array#permutation、Array#combin

  5. Ruby Array concat 与 + 速度? - 2

    我对Ruby的数组concat()与+操作进行了小型性能测试,concat()速度太快了。但是我不清楚为什么concat()这么快?有人可以帮忙吗?这是我使用的代码:t=Time.nowar=[]foriin1..10000ar=ar+[4,5]endputs"Timefor+"+(Time.now-t).to_st=Time.nowar=[]foriin1..10000ar.concat([4,5])endputs"Timeforconcat"+(Time.now-t).to_s 最佳答案 根据Rubydocs,不同之处在于:数组

  6. javascript - 在以逗号分隔的新行上显示每组 3 个数字 - 2

    我需要一个JavaScript代码,生成1到10之间的3个数字一百次。它应该在一个新行上显示每组3个数字,并用逗号分隔,并且还显示生成的数字等于的总次数7(也在单独一行)。示例输出的格式应如下所示:数字集1是:10,7,8号码组2是:5,1,7由于某种原因,我的代码无法正常工作Day3-Example7//countnumberoftimessevenwasgeneratedvari,num,n,num1,num2,cnt=0;n=100;for(i=1;i}}document.write("TotalnumberofSevens:"+cnt); 最佳答案

  7. javascript - 什么为什么!?棘手的 JS 代码传播...和 ​​[].concat - 2

    当我遇到这个时,我正在浏览LaravelMix(webpack设置)的源代码以获得一些关于设置我自己的webpack的灵感。rules.push(...[].concat(newRules))我不明白这是什么意思,但我相信Taylor不会为了它而包含任何多余的东西。当然其中任何一个都一样好吗?rules.concat(newRules)或rules.push(...newRules)甚至是一个很好的旧for循环!但是为什么在传播元素之前连接到空数组呢?如果有人能启发我,我将不胜感激。 最佳答案 我只能推测,因为我没有编写代码,但我想

  8. javascript - Concat vs 插入在 React 最佳实践中添加新数组 - 2

    许多人提倡不可变性,因为他们将redux与react一起使用,但我仍然看到人们使用push而不是concat。以这段代码为例:submitComment(){console.log('submitComment:'+JSON.stringify(this.state.comment))APIManager.post('/api/comment',this.state.comment,(err,response)=>{if(err){alert(err)return}console.log(JSON.stringify(response))letupdateList=Object.ass

  9. javascript - 为什么在此实例中使用 `concat` 而不是 `push`? - 2

    我正在浏览这个问题的答案:CanIdispatchanactioninreducer?在thisanswer,我看到以下内容:actionQueue=actionQueue.concat([asyncAction]);本质上是一样的:actionQueue.push(asyncAction);(忽略concat调用正在创建一个新数组并将其重新分配给actionQueue,结果是一样的——一个带有asyncAction的数组附加到它)。最初,我认为它(也许)(以某种方式)表现得更好,而其他人显然也在想同样的事情,因为他们在jsperf中击败了我:Array.concat()vs..pus

  10. javascript - lodash 中的 groupBy 计数 - 2

    我有一个这样的对象数组:[{rating:1},{rating:2},{rating:3},{rating:1}]我想要这样的结果-{1:2,2:1,3:1}它将是Rating_Value:Count。我怎样才能在lodash中做到这一点?或者是否可以在没有lodash的情况下进行优化? 最佳答案 您可以使用lodash#countBy.varresult=_.countBy(data,'rating');vardata=[{rating:1},{rating:2},{rating:3},{rating:1}];varresult=

随机推荐