如果你增加一个条件表,你的代码可以更通用和更简单。
Set EngineBehavior 70
Close Databases
Clear
Create Cursor Test (学校 C(20), 年级 C(20), 姓名 C(20))
Insert Into Test Values ("第一小学", "一年级", "小张")
Insert Into Test Values ("第一小学", "四年级", "小王")
Insert Into Test Values ("第二小学", "二年级", "老李")
Insert Into Test Values ("第二小学", "三年级", "老钱")
Insert Into Test Values ("第三小学", "三年级", "莉莉")
Insert Into Test Values ("第四小学", "三年级", "莉莉")
Insert Into Test Values ("第二小学", "三年级", "老唐")
Insert Into Test Values ("第二小学", "二年级", "老谢")
Insert Into Test Values ("第一小学", "四年级", "小赵")
Insert Into Test Values ("第一小学", "一年级", "小李")
Create Cursor 条件 (No I, 年级 C(20), 说明 C(10))
Insert Into 条件 Values (1, "一年级", "舞蹈")
Insert Into 条件 Values (1, "三年级", "舞蹈")
Insert Into 条件 Values (2, "二年级", "合唱")
Insert Into 条件 Values (2, "四年级", "合唱")
Select 学校, Cnt(姓名) As 人数, 说明 From Test, 条件 ;
Where Test.年级 = 条件.年级 Group By 学校, 条件.No