❶ 如何在visual foxpro資料庫中篩選出一個欄位中的重復記錄,命令應該怎樣寫希望能得到大家的幫助
嗯,假設有如下表格
請客情況(姓名, 請客日期, 請客金額)
你現在想統計一下姓名有重復的記錄(額,也就是請客超過1次的好童鞋)
select 姓名, count(*) as 請客次數 from 請客情況 group by 姓名 where 請客次數>1
❷ VF常用的數據統計命令
substr()函數是用來取字元串子串的函數。第一個表達式表示要從中取子串的一個字元串,第二個表示從第幾個字元開始,第三個表示去多少個字元的長度。上面的問題的答案應該是
FoxPro
這6個字元。可能是答案有誤。如果前面的表達式有漢字,要注意一個漢字是兩個字元。
❸ 在VF資料庫中,想統計欄位的內容相同的記錄數,顯示出來,命令是什麼
先通過查詢得到此表,代碼如下:
select
jd.fkh
,a.fcj,
from
08g3jd
jd
join
a3生
a
on
jd.fkh
==a.fkh
再將原表刪除,將新表以
08g3jd
命名保存就可以了!!!
❹ vfp怎麼統計一個欄位中相同內容的個數
count for 年齡<18 to n1
count for 年齡>=18 and 年齡<25 to n2
count for 年齡>=25 and 年齡<30 to n3
count for 年齡>=30 and 年齡<35 to n4
count for 年齡>=35 and 年齡<40 to n5
* ...
?n1,n2,n3,n4,n5
❺ VF資料庫檢查相同數據在同一欄位的記錄數的命令是什麼
兩個表b1,b2,共有欄位『aaa』
sele aaa from b1,b2 where b1.aaa=b2.aaa
❻ VFP中如何統計表中記錄數
直接用 recc()這個函數不就行了么?
以下是手冊內容:
返回當前或指定表中的記錄數目。
RECCOUNT([nWorkArea | cTableAlias])
返回值
數值型
參數
nWorkArea
指定表所在的工作區編號。
如果在指定的工作區中沒有打開的表,RECCOUNT( ) 返回 0。
cTableAlias
指定表別名。
備注
SET DELETED 和 FILTER 命令並不影響 reccount( ) 函數的返回值。
不帶可選參數 nWorkArea 或 cTableAlias 的 reccount( ) 函數返回當前所選工作區中表的記錄數目。
示例
❼ vf統計重復三次的人數的命令
編個程序來完成,單個命令是無法實現的。先按這個欄位排序,再用循環程序實現
程序是:
use 表文件名
index on 排序的欄位名 tag 排序
a=排序的欄位名
n=1
s=0
do while not eof()
if a=排序的欄位名
n=n+1
else
a=排序的欄位名
n=1
endif
if n=3
s=s+1
endif
enddo
use
?"有連續三個該欄位值重復的次數為:",s
❽ VFP如何查找兩個表中相同的數據--等VFP高手
1、新建表1、表2,結構與EXCEL表結構一致,並執行以下代碼將EXCEL表的內容導入表1.DBF和表2.dbf。
objExcel = CreateObject("Excel.Application") &&創建一個EXCEL應用程序實例
wjm=getfile("xls","文件名","確定",0,"選擇EXCEL表1")
IF EMPTY(wjm)
RETURN
ENDIF
WAIT wind '正在導入商品信息,請稍候……'nowait at 16,53
objExcel.Workbooks.Open(wjm) &&調用workbooks(Microsoft Excel 應用程序中當前打開的所有 Workbook 對象的集合。)對象的open方法程序來打開指定的文件,並為打開的文件創建一個新的工作簿
LOCAL nrow as Number ,i as Number
i=0
IF objexcel.cells(1,1).value="姓名"
aa=2
ELSE
aa=1
ENDIF
DO WHILE .t.
i=i+1
IF !VARTYPE(objexcel.cells(i,1).value)="C"
nrow=i-1
EXIT
ENDIF
ENDDO
LOCAL arecord(4)
sele 表2
FOR s=aa TO nrow
arecord(1)=objexcel.cells(s,1).value&&A
arecord(2)=objexcel.cells(s,2).value&&B
arecord(3)=objexcel.cells(s,3).value&&C
arecord(4)=objexcel.cells(s,4).value&&D
ENDFOR
INKEY(3)
objexcel.quit
RELEASE objexcel
messagebox("記錄添加完畢",48,"系統提示")
WAIT CLEAR
同樣方法將第二個EXCEL表導入到表2.dbf
2、在兩個DBF表中進行查詢
use 表1.dbf
use 表2.dbf
select 表2
go top
do while not eof()
if allt(姓名)==allt(表1.姓名) and allt(編號)==allt(表1.編號) and 年齡=表1.年齡
xinshui=薪水
select 表1
locat for allt(姓名)==allt(表2.姓名) and allt(編號)==allt(表2.編號) and 年齡=表2.年齡
replace 薪水 with xinshui
endif
select 表2
skip
enddo
3、如果要顯示出所有符合條件的數據,可運行下列命令:
select * from 表1 where not empty(薪水) into cursor tmp
select tmp
browse
❾ 請問FoxPro中如何自動統計所有相同記錄的重復出現個數
可編一小段程序來實現,以下是編程的大體思路:
打開DBF文件;
按姓名排序;
統計第一條記錄的姓名在資料庫中出現的記錄,並復制到另一表中;
設立一個循環:
從第二條記錄開始,如果姓名等於上一條記錄就跳過;
如果姓名不等於上一條記錄,就統計該姓名在資料庫中出現的次數並復制到另一表中;
如此循環直至最後一條記錄。
❿ 如何在VF中列出重復記錄
select 學籍號,count(學籍號) as qqqq from 學校學籍表 group by 學籍號 where qqqq>1;