标题:请教下各位大大:UPDATE SQL 语句比较日期时间大小时提示关联字段时出错
只看楼主
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
得分:0 
以下是引用sdta在2022-8-6 17:29:12的发言:


个人理解方法简单,在于数据处理速度的快慢


对的对的
2022-08-06 18:06
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
得分:0 
以下是引用sdta在2022-8-6 17:23:58的发言:

是不是这样的效果

是的,要这效果
2022-08-06 18:06
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用shonken在2022-8-6 16:10:36的发言:


名次    完成时间
1    2019-05-18T00:00:01
2    2019-05-18T00:00:03
3    2019-05-18T00:00:04
3    2019-05-18T00:00:04
5    2019-05-18T00:00:06

吹版,同分同名次,并占位,注意看名次,里面没有4

生成按时间排队的表,从上到下扫描一次,相对上一条记录,不同时间的名次为记录号,同时间的名次不变,是这意思吧,还不够简单明了。
你那个每条记录都 set .. = .. select ....... ,数据记录多时效率可能相对会慢。
2022-08-06 18:25
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
只会用VFP处理名次问题
程序代码:
CREATE CURSOR 成绩_d (名次 I,完成时间 V(20))
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:08")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:01")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:03")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:06")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:04")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:05")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:00:05")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:01:04")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:01:04")
INSERT INTO 成绩_d (完成时间) VALUES ("2019-05-18T00:01:05")
INSERT INTO 成绩_d (完成时间) VALUES ("")

 
SELECT * FROM 成绩_d WHERE NOT EMPTY(完成时间) ORDER BY 完成时间 INTO CURSOR tt READWRITE 
lcStr = SPACE(1)
lnCnt = 0
SCAN 
    lnCnt = lnCnt + 1
    IF 完成时间 != lcStr
        lnmc = lnCnt
    ENDIF
    REPLACE 名次 WITH lnmc
    lcStr = 完成时间
ENDSCAN

BROWSE 

坚守VFP最后的阵地
2022-08-06 18:41
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
得分:0 
以下是引用吹水佬在2022-8-6 18:25:44的发言:


生成按时间排队的表,从上到下扫描一次,相对上一条记录,不同时间的名次为记录号,同时间的名次不变,是这意思吧,还不够简单明了。
你那个每条记录都 set .. = .. select ....... ,数据记录多时效率可能相对会慢。


这样么,我好像过于迷信SQL语句的效率了......
2022-08-06 20:33
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用shonken在2022-8-6 20:33:40的发言:



这样么,我好像过于迷信SQL语句的效率了......

SELECT - SQL 命令通常是比较高效
但 SELECT 意味着要遍历表记录,如果一条语句出现多个 SELECT 就未必是好事,尤其是在处理每条记录时都要 SELECT
2022-08-06 20:41
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
得分:0 
以下是引用吹水佬在2022-8-6 20:41:45的发言:


SELECT - SQL 命令通常是比较高效
但 SELECT 意味着要遍历表记录,如果一条语句出现多个 SELECT 就未必是好事,尤其是在处理每条记录时都要 SELECT


好的,了解了,谢谢~
2022-08-06 21:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-509726-1-1.html




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

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