MySQL:在结果中将列放在一起?

标签 mysql

好的,当我发出请求时,我希望具有相同 group_id 的所有项目都“在一起”,例如 117,117,134,111 可以,但 117,134,117,111 不行,因为 group_id 117 并非全部“在一起”。我希望这是有道理的。我知道如何实现这一点的唯一方法是按 group_id 对我的结果进行排序,但是如果我想按类似价格或其他方式进行排序,有没有办法在将所有匹配的 group_id 保持在一起的同时做到这一点?

谢谢。

最佳答案

是的,您只需同时订购,所以您的 ORDER BY 应该如下所示:

ORDER BY group_id, price

这将首先按 group_id 排序,然后按价格排序。所以所有相同的 group_id 会在一起,但只要有多个相同的 group_id,它们就会按价格排序。

虽然你的问题有点模棱两可,所以只是为了解释以防万一它是你真正想要的 - 没有简单的方法来“主要”按价格订购并且只是将相同的 group_ids 放在一起,这真的没有任何意义。我的意思是,如果您有以下数据:

group_id  price
117       2.00
117       5.00
111       4.00
134       1.00

您不能轻易按此顺序选择它:

group_id  price
134       1.00
117       2.00
117       5.00
111       4.00

关于MySQL:在结果中将列放在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/802430/

相关文章:

php - 是否有可能从 PHP(使用 ZEND)执行时 INSERTS 被延迟?

mysql - phpmyadmin (linux) 删除 mysql SQL 查询窗口中的反引号

php - Phinx迁移SQLSTATE[42S01] : Base table or view already exists:

mysql - 声明错误处理程序在 MySQL 中无效?

php - MySql:索引循环

mysql - MySql慢查询日志分析工具

php - 通过单个查询将参数用法绑定(bind)到多个值

mysql - Linq 执行查询 InvalidOperationException

java - 我应该如何从包含数据数组的 ListView 切换到新 Activity ?

java - 运行 Tomcat+Mysql 的最低系统要求是什么