SQL SERVER 语句的问题!回答后还有重赏
来源:百度知道 编辑:UC知道 时间:2024/09/18 04:08:01
举例:本来的一个值是2000,现在要除以1000显示为2
首先这个字段是字符串的,并且全部都是数字的那种,由于我是新手,对这个东西不怎么了解,才接手,所以我会尽量高的给分,请各位帮忙解决啊
怎么没消息了?看看星(*)号内的答案吧。
UPDATE 表A SET 字段B=字段B/1000
==================================
如果字段B是字符型,要这样才行:
************* 只显示就这样:
select 字段B=convert(nvarchar,convert(float,字段B)/1000),字段A,字段C FROM 表A
where ISNUMERIC(字段B)=1
--WHERE限定了数值型字段才计算,以免报错.
************星号中就是完整的语句,字段A和字段C你可以去掉.
select 字段B=convert(nvarchar,convert(float,字段B)/1000) FROM 表A
where ISNUMERIC(字段B)=1
====
如果不会类型转换函数,请在帮助里查找CONVERT 和CAST函数.
=====
字段A和字段C是什么?
哈哈,看来我画蛇添足了,
我是怕您查询的表中还有别的字段要显示,就表示其它要显示的字段啊.
数据类型转换函数:
CAST 和 CONVERT
作用:
将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。
语法
使用 CAST:
CAST ( 源值 AS 目标类型 )
使用 CONVERT:
CONVERT (目标数据类型, 源值)
是修改数据库中的数据为原来的2000分之一?还是只在显示出来的时候值为原来的2000分之一?
UPDATE A SET B=B/2000 这是修改数据库中的值
Select B from A,然后一项一项的Select出来的值除以200赋给你设置的变量。这是只显示为原来的2000分之一,数据库中的值不变
这其实就是字段数值更新的意思,而且包含整列