SQL Server函数中 convert(char(10),rq,21)>具体代表什么含义?

作者&投稿:犹万 (若有异议请与网页底部的电邮联系)
CONVERT(CHAR(10),STATUS)什么意思啊?convert不是和时间有关的函数吗?~

在SQL中,CONVERT是类型转换函数,意思是将STATUS字段转换为CHAR(10)类型.

Select getdate(), getdate()-14--结果--2016-10-19 11:30:54.683 2016-10-05 11:30:54.683可见getdate()-14是减去14天,减完结果依旧是datetime类型Select convert(char(10),getdate(),121)--结果 2016-10-19--convert是数据转换,当转换目标是datetime时第三个参数可以指定转换样式
convert用法
格式:CONVERT(data_type,expression[,style])
说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.
例子:SELECT CONVERT(varchar(30),getdate(),101) now结果为:now---------------------------------------|09/15/2001
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE(), 1): 05/16/06Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AMSelect CONVERT(varchar(100), GETDATE(), 10): 05-16-06Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16Select CONVERT(varchar(100), GETDATE(), 12): 060516Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AMSelect CONVERT(varchar(100), GETDATE(), 23): 2006-05-16Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE(), 101): 05/16/2006Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AMSelect CONVERT(varchar(100), GETDATE(), 110): 05-16-2006Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16Select CONVERT(varchar(100), GETDATE(), 112): 20060516Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827 Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM
更多请参考:
blog.csdn.net/cb_cb/article/details/7875572 www.cnblogs.com/tian_z/archive/2011/07/14/2106399.html

把日期转成字符串
char(10),表示转换后的字符串长度为10
rq,就是被转换的日期参数
21代表格式

convert的用法,及日期格式,见下:
语法
使用 CONVERT:

CONVERT (数据类型[长度], 表达式 [, 日期格式样式])

转换为日期型时可使用日期格式样式
不带世纪数位 (yy) 带世纪数位 (yyyy) 标准 输入/输出**
- 0 或 100 (*) 默认值 mon dd yyyy hh:miAM(或 PM)
1 101 美国 mm/dd/yyyy
2 102 ANSI yy.mm.dd
3 103 英国/法国 dd/mm/yy
4 104 德国 dd.mm.yy
5 105 意大利 dd-mm-yy
6 106 - dd mon yy
7 107 - mon dd, yy
8 108 - hh:mm:ss
- 9 或 109 (*) 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM)
10 110 美国 mm-dd-yy
11 111 日本 yy/mm/dd
12 112 ISO yymmdd
- 13 或 113 (*) 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 或 120 (*) ODBC 规范 yyyy-mm-dd hh:mm:ss[.fff]
- 21 或 121 (*) ODBC 规范(带毫秒) yyyy-mm-dd hh:mm:ss[.fff]
- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(不含空格)
- 130* 科威特 dd mon yyyy hh:mi:ss:mmmAM
- 131* 科威特 dd/mm/yy hh:mi:ss:mmmAM

这是日期格式转换
参照微软的联机例子和语法,这样对你有帮助

转换数据类型


安阳市13091339158: SQLSERVER中有没有concat函数 -
盈郝百日: 完全不同的两个函数,concat函数是把参数转化成字符串然后连接起来返回,如果有参数中有一个是Null的话就返回null,concat('A','B')返回结果就是'AB',Nvl函数是返回Null的替代值,有两个参数,例如 Nvl(Parameter1,Parameter2)

安阳市13091339158: SqlCommand com=new SqlCommand(sql,con);这句是什么意思 -
盈郝百日: 这个是自己写的代码,应该是执行一个sql语句.

安阳市13091339158: sql中convert转化函数的用法
盈郝百日: 说明: 使用 CONVERT: CONVERT ( data_type [ ( length ) ] , expression [ , style ] ) 参数 expression 是任何有效的 Microsoft® SQL Server™ 表达式.. data_type 目标系统所提供的数据类型,包括 bigint 和 sql_variant.不能使用用户定义的数...

安阳市13091339158: sql server中convert函数问题 -
盈郝百日: 转换是临时的,仅供筛选记录使用,select语句肯定不会改变表结构的 另外,查询分析器里显示的也没有转换,如果 select 姓名, convert(char(20),总学分) as 总学分 from xs1 where convert(char(20),总学分) like '8_' 才是将显示的转换,但表结构也是不会变的,仅是显示而已

安阳市13091339158: SQL Server convert函数转换整数问题 -
盈郝百日: select right(replicate('0', 1) + convert(varchar(10),1), 2) 楼主你可以直接运行上面的看看,是可以达到效果的. convert(varchar(10),1)这个不用说你明白的,replicate('0', 1)是左位补0,第二个参数是控制要补几个0. 剩下的楼主看也看明白了吧

安阳市13091339158: SQL中字符串的连接 -
盈郝百日: 在MYSQL中字符串连接使用的是concat内置函数.可以写为:select * from myDB where name =concat('a','bc')在SQL Server中字符串连接用+号.可以写为:select * from myDB where n...

安阳市13091339158: java连接Sql Server2005数据库,出现NullPointerException异常?
盈郝百日: 你确定con不是null值/ 调用getDatabase()方法的时候包con=null传进去了 不过你传过来的con(实参:调用处的变量,此时指向堆上地址:null)到了方法中,已经是另外一个栈上面的的地址了(形参:方法中的局部变量,此时指向堆上地址:null) 在方法中形参的引用地址被改变了 con=DriverManager.getConnection(url, "sa", "123456");而实参的引用地址未被改变 ,依然是null值

安阳市13091339158: .net SqlCommand(sql语句,conn) ; sql语句可以写查询吗 -
盈郝百日: 当然可以啦--------Connection 省略 strinin sql="" 增,删,改查都可以 SqlCommand cmd = new SqlCommand(sql, conn); cmd.ExecuteScalar()---执行查询,返回第一行第一列的值 cmd.ExecuteNonQuery();--执行增,删,改 返回影响行数 SqlDataReader sdr = cmd.ExecuteReader();--查询,很明显可以看到 返回的是 SqlDataReader对象 ,然后在使用SqlDataReader的 sdr.Read()方法读出数据 - - !! 怎么试同一个 你问了两次么?

安阳市13091339158: SqlCommand Cmd = new SqlCommand(Sql, Conn)什么意思 -
盈郝百日: 表示要对 SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程.无法继承此类. 命名空间: System.Data.SqlClient 程序集: System.Data(在 System.Data.dll 中) C#: public sealed class SqlCommand : DbCommand, ICloneable...

安阳市13091339158: SQL SERVER有类似ORACLE里的TRUNC函数的吗 -
盈郝百日: SQLSERVER没有类似ORACLE里的TRUNC函数,但是可以用cast函数进行转换处理.在sql server2008中:可以自定义函数实现trunc函数的功能:CREATE FUNCTION trunc_date(@date DATETIME) RETURNS DATETIME AS BEGIN CAST(FLOOR( CAST( @date AS FLOAT ) )AS DATETIME) END 用法:select trunc_date(@SomeDate)

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网