我的数据库中有这个
stdin
我只想选择仅前两个数字匹配的字符串,并显示其中有94个,因此它将输出75012 = 2、94 = 3、78 = 1。
这是我尝试过的:
echo your-password | sudo -S visudo
答案 0 :(得分:1)
您需要在查询中使用group by子句。
SELECT LEFT(cpostal,2), COUNT(*) AS total
FROM fiche_personne
GROUP BY LEFT(cpostal,2)
请注意,COUNT(*)不是完成查询的最佳方法,但我不知道您的实际表结构,因此应将其更改为实际的列名
答案 1 :(得分:0)
select count(cpostal) from fiche_personne WHERE cpostal LEFT(cpostal, 2) = 94;
答案 2 :(得分:0)
DROP TABLE IF EXISTS my_table;
CREATE TABLE my_table
(i INT NOT NULL PRIMARY KEY);
INSERT INTO my_table VALUES
(75012),
(75016),
(94400),
(94500),
(94300),
(78400);
SELECT MIN(i) i, COUNT(*) total FROM my_table GROUP BY LEFT(i,2);
+-------+-------+
| i | total |
+-------+-------+
| 75012 | 2 |
| 78400 | 1 |
| 94300 | 3 |
+-------+-------+