mysql - MySQL 中的 SQL 分组

标签 mysql sql

确实,

我需要一些关于 SQL 的帮助。我有两个 SQL 查询:

第一个计算特定条件出现的次数:

SELECT COUNT(*) 
FROM table1
WHERE condition1 = @condition

第二个选择与辅助表连接的同一个表上匹配相同条件的每一行:

SELECT *
FROM table1 INNER JOIN table2
ON table2.id = table1.id_sub
WHERE condition1 = @condition

以交互方式(通过代码)使用这两个查询,我可以实现我需要的结果,但我想使用 SQL 功能而不是编码来优化过程。

我真正需要的是一个查询,它只为匹配条件1的每组行报告一行。 我还需要插入匹配行的计数作为结果行的字段。

我正在运行 MySQL 5.6,并通过 Visual Studio 2013 Pro 用 C# 编码(使用 MySQL.Data 包)来编写应用程序。

最诚挚的问候, 怪异妇产科

最佳答案

您所需要做的就是GROUP BY condition1 字段。看起来,如果您只需要按组 COUNT ,则不需要加入。

SELECT condition1, COUNT(*)
FROM table1
--INNER JOIN table2
--    ON table1.id_sub = table2.id
GROUP BY condition1

关于mysql - MySQL 中的 SQL 分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27988848/

相关文章:

c# - SQL 超时和查询性能

从表中排除某些值的 SQL 查询

Mysql 查询按日期搜索

javascript - 通过 PHP、JSON 和 Javascript 将用户特定数据插入 HTML

mysql - 如何在MySql中转义撇号(单引号)?

javascript - Web 应用程序发送表单两次

MySQL - 在连接时引用伪表内的外部表

php - 通过查询或脚本在 mysql 表中插入 rownums

sql - 复制查询结果到另一个mysql表

mysql 查询多对多关系中的匹配项