Foxtable(狐表)用户栏目专家坐堂 → 视图里增加列


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

主题:视图里增加列

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 11:05:00 [显示全部帖子]

 直接写

 

Cast(vcsm.fintBirthdayYear As varchar) + '-' + Cast(vcsm.fintBirthdayMonth as varchar) as 出生日期


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 12:09:00 [显示全部帖子]

测试了一下,可以。自己改。

 

select case when 月 is null or 日 is null then null else cast(cast(isnull(年,1900) as varchar) + '-' + cast(月 as varchar) + '-' + cast(日 as varchar) as datetime) end as 出生年月 from {test}


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 12:44:00 [显示全部帖子]

sqlserver 没有date类型的,要用datetime。

 

再者,你的数据肯定有不合规范的数据,比如 月是23,日是40,这种数据。单独用少一点的数据测试吧。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 14:26:00 [显示全部帖子]

 请不要把这个操作放在视图里执行。

 

 你把所有数据加载到狐表里,用代码遍历所有的行,检测,并修改,把数据弄规范再说。

[此贴子已经被作者于2014-5-21 15:05:36编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/21 14:28:00 [显示全部帖子]

 日期函数,自己看着办吧 http://www.foxtable.com/help/topics/1337.htm

 

[此贴子已经被作者于2014-5-21 14:27:41编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/5/23 14:04:00 [显示全部帖子]

回复16楼,datetime都是包含时间的,无法解决。不过你加载到狐表的时候,就会不显示时间的。


 回到顶部