MySQL 如何使用MySQL返回具有相同列值的行?
使用GROUP BY子句。我们首先创建一个表-
mysql> create table DemoTable
-> (
-> StudentId int,
-> StudentMarks int
-> );
Query OK, 0 rows affected (4.71 sec)
使用插入命令将一些记录插入表中-
mysql> insert into DemoTable values(23,58);
Query OK, 1 row affected (0.70 sec)
mysql> insert into DemoTable values(25,89);
Query OK, 1 row affected (0.46 sec)
mysql> insert into DemoTable values(26,58);
Query OK, 1 row affected (1.13 sec)
mysql> insert into DemoTable values(28,98);
Query OK, 1 row affected (0.86 sec)
使用select语句从表中显示所有记录 –
mysql>select *from DemoTable;
阅读更多:MySQL 教程
输出
+-----------+--------------+
| StudentId | StudentMarks |
+-----------+--------------+
| 23 | 58 |
| 25 | 89 |
| 26 | 58 |
| 28 | 98 |
+-----------+--------------+
4 rows in set (0.00 sec)
以下是在MySQL中返回具有相同列值的行的查询-
mysql> select StudentMarks from DemoTable
-> group by StudentMarks
-> having sum(StudentId=23) > 0 and
-> sum(StudentId=26) > 0;
输出
+--------------+
| StudentMarks |
+--------------+
| 58 |
+--------------+
1 row in set (0.00 sec)