以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  怎么改变查询表里面的列的类型?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97892)

--  作者:527383691
--  发布时间:2017/3/20 17:33:00
--  怎么改变查询表里面的列的类型?

大神~基表有列是字符型的列,其对应的查询表的列需要变成双精度小数,要怎么实现?


--  作者:狐狸爸爸
--  发布时间:2017/3/20 18:15:00
--  
例如:

Se lect 第一列 + 0 From {表A}

--  作者:有点色
--  发布时间:2017/3/20 18:50:00
--  
Access数据库
 
select iif(IsNumeric(第一列), Cdbl(第一列), null) from {表a}

--  作者:527383691
--  发布时间:2017/3/23 17:42:00
--  

谢谢~

转变前的字符列有两种数据,一种是小数,另一种是像“ND(1.20)”这样的字符。

“ND(1.20)”这样的字符也可以通过+0转换成双精度小数吗?


--  作者:有点色
--  发布时间:2017/3/23 18:21:00
--  

 用sql语句是无法处理的,要用代码把数字提取出来

 

Dim str As String = "nd(1.28)"
Dim mc1 = System.Text.RegularExpressions.Regex.Matches(str,"[0-9.]+")
If mc1.count > 0 Then
    msgbox(mc1(0).value)
End If