sql转换成字符串
1. sql语句中, 怎样把日期转为字符串
CONVERT
(data_type[(length)],
expression
[,
style])
参数
expression
data_type
目标系统所提供的
数据类型
,包括
bigint
和
sql_variant。不能使用用户
定义
的数据类型。有关可用的数据类型的更多信息,请参见数据类型。
length
nchar、nvarchar、char、varchar、binary
或
varbinary
数据类型的可选参数。
style
日期格式
样式
,借以将
datetime
或
smalldatetime
数据转换为字符数据(nchar、nvarchar、char、varchar、nchar
或
nvarchar
数据类型);
或者
字符串
格式样式,借以将
float、real、money
或
smallmoney
数据转换为字符数据(nchar、nvarchar、char、varchar、nchar
或
nvarchar
数据类型)。
在表中,左侧的两列表示将
datetime
或
smalldatetime
转换为字符数据的
style
值。
给
style
值加
100,可获得包括世纪数位的四位年份
(yyyy)。
2. 如何将sql 中的字符串转换成数字,和如何将数字转换成字符串
num1是主键,类型是int,num2是外键,类型是text, num2中可以是多个值也可以使一个值,如num2中一列有4个值(1,2,3,4),num1中分别有4列值为1,2,3,4,要num1和num2比较,num1=num2,如何把num2转换为单独的1,2,3,4
我要查询,select * from table1,table2 where num1=num2 那num1=num2这块怎么写啊,num1是4个值,num2是一个值,查出来的结果也是4个值的
3. 在sql server2000中,如何把整型字段转换成字符串型字段
你是要输出时临时转一下,还是要把数据表中字段类型改掉呢?
如果只是输出时转换的话,可以用CAST
或
CONVERT函数来转换,如:
SELECT
CAST(整形字段
AS
nvarchar(20))
或
SELECT
CONVERT(nvarchar(20),
整形字段)
如果是要将字段类型改为字符串的话,可以用语句,也可以直接在设计器里改,用语句的话,用:
ALTER
TABLE
表名
ALTER
COLUMN
整形字段
nvarchar(20)
4. 在sql server2000中,如何把整型字段转换成字符串型字段
使用函数STR()
STR
由数字数据转换来的字符数据。
语法
STR ( float_expression [ , length [ , decimal ] ] )
参数
float_expression
是带小数点的近似数字 (float) 数据类型的表达式。不要在 STR 函数中将函数或子查询用作 float_expression。
length
是总长度,包括小数点、符号、数字或空格。默认值为 10。
decimal
是小数点右边的位数。
返回类型
char
注释
如果为 STR 提供 length 和 decimal 参数值,则这些值应该是正数。在默认情况下或者小数参数为 0 时,数字四舍五入为整数。指定长度应该大于或等于小数点前面的数字加上数字符号(若有)的长度。短的 float_expression 在指定长度内右对齐,长的 float_expression 则截断为指定的小数位数。例如,STR(12,10) 输出的结果是 12,在结果集内右对齐。而 STR(1223, 2) 则将结果集截断为 **。可以嵌套字符串函数。
说明 若要转换为 Unicode 数据,请在 CONVERT 或 CAST 转换函数内使用 STR。
示例
A. 使用 STR
下例将包含五个数字和一个小数点的表达式转换为有六个位置的字符串。数字的小数部分四舍五入为一个小数位。
SELECT STR(123.45, 6, 1)
GO
下面是结果集:
------
123.5
(1 row(s) affected)
当表达式超出指定长度时,字符串为指定长度返回 **。
SELECT STR(123.45, 2, 2)
GO
下面是结果集:
--
**
(1 row(s) affected)
即使数字数据嵌套在 STR内,结果集也是带指定格式的字符数据。
SELECT STR (FLOOR (123.45), 8, 3)
GO
下面是结果集:
--------
123.000
(1 row(s) affected)
5. 在sql中如何实现电话号码中间的4位数字转换成特殊字符
不同的数据库做法不同
replace就是替换,虽然是字符的替换,不过你的特殊字符应该不是数字吧,所以你的号码应该存成字符型,不然假设你的替换字符是xxxx,可是这个可是没办法插入数字格式的。
你说的中间四位怎么定义,是类似xxx xxxx xxxx种种,还是XX YYYY xx这种,如果是前面那种那就用定位比如substr,不知道你是什么数据库,只能用oracle的方式写,可以根据自己数据库自行查找相应函数
比如,replace(字符串,substr(字符串,4,4),'XXXX')
这样的话,假设源字符串为001 1101 1100,那么就会变为001 xxxx 1100
当然,这个语句本身是有问题的,如果刚巧你的号码比较特殊,比如001 0101 0101,那么可能就变成了0XXXX XXXX 01,或者001 1001 1001 那么就是001 XXXX XXXX
那么怎么只更换中间四位,其他位置有特殊的也不动呢?
有两个办法
(1)分开显示人然后合并,比如 selelct substr(字符串,1,3)||‘XXXX’|| substr(字符串,-1,4) (本写法是oracle的,其他数据库的连接符号各有不同,情自行查找)
(2)replace全部替换,其实合作前面的差不多,比如replace(字符串,substr(字符串,1), substr(字符串,1,3)||‘XXXX’|| substr(字符串,-1,4))
6. SQL如何将当前时间转换成8位的字符串格式
CONVERT (data_type[(length)], expression [, style])
参数
expression
data_type
目标系统所提供的数据类型,包括 bigint 和 sql_variant。不能使用用户定义的数据类型。有关可用的数据类型的更多信息,请参见数据类型。
length
nchar、nvarchar、char、varchar、binary 或 varbinary 数据类型的可选参数。
style
日期格式样式,借以将 datetime 或 smalldatetime 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型);
或者字符串格式样式,借以将 float、real、money 或 smallmoney 数据转换为字符数据(nchar、nvarchar、char、varchar、nchar 或 nvarchar 数据类型)。
在表中,左侧的两列表示将 datetime 或 smalldatetime 转换为字符数据的 style 值。
给 style 值加 100,可获得包括世纪数位的四位年份 (yyyy)。
7. 关于SQL 字符串转换~
除非你是想把数据库里面的这个字段改掉,否则数据都是取出来后再根据实际情况换里面的字段,
1、直接换数据库里面的字段
update table1 set dates='2012-11' where dates='201211'
2、取出来后换,要看你是什么语言
8. SQL语句中, 怎样把日期转为字符串
这个问题我已经回答了,楼主是mysql数据库.
需要得到yyyymm,应该是.
select
concat(year(now()),month(now()));
9. sql中怎么将double型 的转换为字符串型
select CAST( 字段名 as 字符串类型)
比如 现在我有一个student表中有一个grade 类型double 保存学生成绩
select cast(garde as nvarchar(50)) as '列别名' from student
当前注意 转换的时候,注意类型本身的大小,例如 大字段(长度) 转换 小类型 或许会失败