表tableinfo id
12.5 22
公鸡 39
22 88
请问info列有char类型,也有int和float,我不想直接用个nvarchar(max),我想根据实际输入是什么类型就可以生成到数据库是什么类型,请问高手有什么方法吗?
12.5 22
公鸡 39
22 88
请问info列有char类型,也有int和float,我不想直接用个nvarchar(max),我想根据实际输入是什么类型就可以生成到数据库是什么类型,请问高手有什么方法吗?
insert @t
select '12.5',22 union all
select '公鸡',39 union all
select '22',88select * from @t WHERE ISNUMERIC(info)=1
/*
info id
---- -----------
12.5 22
22 88
*/
必要的时候用,不然在做查询、计算的时候需要转换类型,不安全。