⑴ sql 如何格式化输出这个数字
SELECT SUBSTRING(CONVERT(char, 320.01), 1, 1) + '"' + SUBSTRING(CONVERT(char, 320.01), 2, 2)
same result.
⑵ 如何将sql查询得到数字按大小转换成字母输出
转换的方式有很多种,但是最主要的是你需要制定转换的规则。
比如什么值转换成A,什么值转换成B。这个需要一定的规则,要不然程序是无法知道一个数值要转换成什么字母的。
你可以在sql文里做转换,比如oracle的
decode函数
,以及
sqlserver
的iif函数,只不过这个比较适用于较少
数据项
的转换,你这种情况不太适合用这两个函数进行转换。
你也可以在数据库里做一张配置表,把数值跟字母对应起来,这样查询的时候,根据no值和配置表做一个对应,这样查询出来的结果就是转换后的字母了。
你也可以用xml或者其他文件做一个
配置文件
,把no值作为key,把字母当成value。程序加载时,把它读到
hashtable
里边去,hashtable是k-v方式存储数据的,因此转换的时候,你只要把no值当成key传到hashtable里边去就能获取到响应的字母了。
Private
Sub
Button1_Click(ByVal
sender
As
System.Object,
ByVal
e
As
System.
EventArgs
)
Handles
Button1.Click
hashtable.Add(1001,
"A")
hashtable.Add(1002,
"B")
hashtable.Add(1003,
"C")
hashtable.Add(1004,
"D")
MessageBox
.Show(Exchange(1001))
End
Sub
Public
Function
Exchange(ByVal
source
As
Integer)
As
String
Return
hashtable.Item(source).ToString
End
Function
总之,最主要的是制定一个转换规则。
⑶ SQL数字显示格式
印像中没有那种参数,不过可以用以下的方法实现,可能笨了一点,供你参考
conver 函数将money的数据类型转为字符串时可以转为带逗号的格式如convert(varchar,323232.11)=323,232.11,我们可以利用这种格式,先转为money,再转为字符串,然后把里面的逗号替换为空格再去掉后面的小数点来实现你的要求,如在你的sql语句里这样写:
select replace(replace(convert(varchar,convert(money,t1.FNumber),1),',',' ' ),'.00','')
其中通过convert(varchar,convert(money,t1.FNumber),1) 把它转换为了xxx, xxx,xxx.00格式,然后通过replace函数将逗号和'.00'替换掉
以上代码在sqlserver里测试过
⑷ sql语句中如何将数值格式输出
select convert(decimal(38,2), AA.a )
from
(
select 1.1111 as a
union
select 1.2222 as a
union
select 1.3333 as a
union
select 1.5555 as a
) as AA
你这里的话用convert(decimal(38,2), sum(hf)/100 )as res_je 就可以了
decimal(38,2) 意思是38位的数字,其中2位是小数位
⑸ sql查询结果如何以百分比形式输出
以百分比形式输出sql查询结果的步骤如下:要准备的材料是:computer,sql querier。
1.首先,打开sql查询器并连接到需要查询的数据表。以测试表的得分字段为例。