| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 629 人关注过本帖
标题:包含字符的数量统计
只看楼主 加入收藏
chychychy
Rank: 2
等 级:论坛游民
帖 子:285
专家分:98
注 册:2015-4-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:12 
包含字符的数量统计
tjb.rar (4.16 KB)

图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册

按表1中km来统计表2中包含表1km信息的不同学校数据,生成tjb,虽然以前求助过类似的,但是一是没学会循环统计并写入新表,二是被包含难住了。

[此贴子已经被作者于2024-5-16 18:23编辑过]

搜索更多相关主题的帖子: 循环 统计 字符 包含 数量 
2024-05-16 18:16
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1730
专家分:3324
注 册:2012-2-29
收藏
得分:10 
回复 楼主 chychychy
分类汇总吧
这样,行吗?
图片附件: 游客没有浏览图片的权限,请 登录注册

程序代码:
select bmddm,sum(iif([物理]$xkkmzhmc,1,0)) as 物理,;
             sum(iif([化学]$xkkmzhmc,1,0)) as 化学,;
             sum(iif([生物]$xkkmzhmc,1,0)) as 生物,;
             sum(iif([政治]$xkkmzhmc,1,0)) as 政治,;
             sum(iif([历史]$xkkmzhmc,1,0)) as 历史,;
             sum(iif([地理]$xkkmzhmc,1,0)) as 地理 ;
             from 表2 group by bmddm union ;
             select [合计],;
                sum(iif([物理]$xkkmzhmc,1,0)) as 物理,;
                sum(iif([化学]$xkkmzhmc,1,0)) as 化学,;
                sum(iif([生物]$xkkmzhmc,1,0)) as 生物,;
                sum(iif([政治]$xkkmzhmc,1,0)) as 政治,;
                sum(iif([历史]$xkkmzhmc,1,0)) as 历史,;
                sum(iif([地理]$xkkmzhmc,1,0)) as 地理 ;
                from 表2 into cursor ls
select ls
browse


[此贴子已经被作者于2024-5-17 05:54编辑过]

2024-05-16 18:55
chychychy
Rank: 2
等 级:论坛游民
帖 子:285
专家分:98
注 册:2015-4-18
收藏
得分:0 
回复 2楼 schtg
非常正确[强]
这样设计更加合理,请教程序语句学习

[此贴子已经被作者于2024-5-16 23:01编辑过]

2024-05-16 19:48
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:10 
程序代码:
CLOSE DATABASES 
USE Tjb IN 0
FOR ln = 2 TO FCOUNT()
    BLANK FIELDS (FIELD(ln)) ALL 
ENDFOR
INDEX ON Km TAG Km
USE Chy2 IN 0 && 原表名为 表2.DBF
SELECT Chy2
SCAN 
    FOR ln = 1 TO ALINES(laKm, Xkkmzhmc, 5, "、")
        IF SEEK(laKm[ln]+SPACE(8-LEN(laKm[ln])), "Tjb", "Km") = .T.
            REPLACE Zong WITH Zong+1, ("N"+ALLTRIM(Chy2.Bmddm)) WITH EVALUATE("N"+ALLTRIM(Chy2.Bmddm)) + 1 IN Tjb
        ENDIF
    ENDFOR
ENDSCAN
SELECT Tjb
SET ORDER TO 
DELETE TAG Km.CDX
BROWSE 

坚守VFP最后的阵地
2024-05-16 20:30
chychychy
Rank: 2
等 级:论坛游民
帖 子:285
专家分:98
注 册:2015-4-18
收藏
得分:0 
回复 4楼 sdta
完全正确,目前还是拿来主义,scan中间的for if repl还没理解,下次还是不会用,得好好消化
CLOSE DATABASES
USE 表1 ALIAS CHY1 IN 0
USE 表2 ALIAS chy2 IN 0
sELECT DISTINCT bmddm    FROM chy2 INTO ARRAY arr_bmddm
cmd = "CREATE CURSOR TJB (km c(8),zong I"
FOR i=1 TO ALEN(arr_bmddm)
    cmd = cmd + "," + "N" + arr_bmddm[i] + " I"
ENDFOR
cmd = cmd + ")"
EXECSCRIPT(cmd)

APPEND FROM chy1&&&提示chy1不存在,用原名表1才可以,上面有别名了,为什么提示错误
INDEX ON Km TAG Km
SELECT Chy2
SCAN
    FOR ln = 1 TO ALINES(laKm, Xkkmzhmc, 5, "、")
        IF SEEK(laKm[ln]+SPACE(8-LEN(laKm[ln])), "Tjb", "Km") = .T.
            REPLACE Zong WITH Zong+1, ("N"+ALLTRIM(Chy2.Bmddm)) WITH EVALUATE("N"+ALLTRIM(Chy2.Bmddm)) + 1 IN Tjb
        ENDIF
    ENDFOR
ENDSCAN
SELECT Tjb
SET ORDER TO
DELETE TAG Km.CDX


[此贴子已经被作者于2024-5-16 22:34编辑过]

2024-05-16 22:24
chychychy
Rank: 2
等 级:论坛游民
帖 子:285
专家分:98
注 册:2015-4-18
收藏
得分:0 
回复 4楼 sdta
我设想的tjb是自动判断生产,参考您的代码修改了一下。但环境不同了,这种环境下明显感觉不如2楼的合理和好用
2024-05-16 22:26
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
USE 表1 ALIAS CHY1 IN 0
USE 表2 ALIAS chy2 IN 0
......................
EXECSCRIPT(cmd)
* 看下工作区是否被关闭
? alias("chy1")
? alias("chy2")
APPEND FROM chy1

坚守VFP最后的阵地
2024-05-16 22:33
chychychy
Rank: 2
等 级:论坛游民
帖 子:285
专家分:98
注 册:2015-4-18
收藏
得分:0 
回复 7楼 sdta
是打开的,我测试无论打开还是关闭表1,appe from 是文件原名都可以,别名不行不是appe from 只能是文件名不能是别名
2024-05-16 22:46
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
以下是引用chychychy在2024-5-16 22:46:44的发言:

是打开的,我测试无论打开还是关闭表1,appe from 是文件原名都可以,别名不行不是appe from 只能是文件名不能是别名

帮助文件中指定的是文件名,不是别名。

坚守VFP最后的阵地
2024-05-17 00:50
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1730
专家分:3324
注 册:2012-2-29
收藏
得分:0 
回复 3楼 chychychy
代码可见2楼,可能不是最佳语句
我也有这方面的工作,欢迎交流

[此贴子已经被作者于2024-5-17 05:57编辑过]

2024-05-17 05:41
快速回复:包含字符的数量统计
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032118 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved