Foxtable(狐表)用户栏目专家坐堂 → [求助]向通过MSSQL命令 批量更新年龄


  共有2280人关注过本帖树形打印复制链接

主题:[求助]向通过MSSQL命令 批量更新年龄

帅哥哟,离线,有人找我吗?
81538475
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1287 积分:10368 威望:0 精华:1 注册:2018/1/20 12:40:00
[求助]向通过MSSQL命令 批量更新年龄  发帖心情 Post By:2023/3/29 16:06:00 [显示全部帖子]

Dim cmd As New SQ\Command
cmd.Connecti

cmd.Com mand Text = "UPD ATE {人员信息表} SET 年龄 = Iif(DATALENGTH(身份证号)<18,(substring(CONVERT(varchar(100), GETDATE(), 23),1,4)-(1900+substring(身份证号,7,2)))-(substring(身份证号,9,4)-format(Getdate(),'%m%d')),(substring(CONVERT(varchar(100), GETDATE(), 23),1,4)-substring(身份证号,7,4))-(substring(身份证号,11,4)-format(Getdate(),'%m%d') )) WHERE 身份证号 is not null AND 身份证号<>''"
cmd.ExecuteNonQuery() 

 回到顶部
帅哥哟,离线,有人找我吗?
81538475
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1287 积分:10368 威望:0 精华:1 注册:2018/1/20 12:40:00
  发帖心情 Post By:2023/3/29 16:24:00 [显示全部帖子]

数据类型 nvarchar 和 nvarchar 在 subtract 运算符中不兼容。 这个提示


 回到顶部
帅哥哟,离线,有人找我吗?
81538475
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1287 积分:10368 威望:0 精华:1 注册:2018/1/20 12:40:00
  发帖心情 Post By:2023/3/29 20:24:00 [显示全部帖子]

图片点击可在新窗口打开查看 问了一下chatgpt4 。 。。给出了我要的答案
SE\ECT
     身份证号,
    FLOOR(DATEDIFF(DAY, SUBSTRING(身份证号, 7, 4) + '-' + SUBSTRING(身份证号, 11, 2) + '-' + SUBSTRING(身份证号, 13, 2), GETDATE()) / 365.25) AS age
FROM
    人员信息表

 回到顶部
帅哥哟,离线,有人找我吗?
81538475
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1287 积分:10368 威望:0 精华:1 注册:2018/1/20 12:40:00
  发帖心情 Post By:2023/3/29 20:37:00 [显示全部帖子]

这样图片点击可在新窗口打开查看
[此贴子已经被作者于2023/3/29 20:37:25编辑过]

 回到顶部