sqlserver转日期
A. sqlserver如何将身份证号码的出生日期提取出来转为日期类型数据
#include
"stdio.h"
void
main()
{
int
i;
/*身份证的第i位*/
int
s[17];
/*定义一个数组用来存放身份证的前17位*/
int
t[17];
/*各位相乘后的数组*/
int
m;
/*余数*/
int
t18;
/*身份证的第18位0--9*/
char
t18c;
/*身份证的第18位X*/
long
int
sum=0;
for(i=0;i<17;i++)
{
printf("请输入身份证的第%d位:",i+1);
scanf("%d",&s[i]);
switch(i+1)
{
/*身份证的1到17位要乘的数一次是7
9
10
5
8
4
2
1
6
3
7
9
10
5
8
4
2
*/
case
1:t[i]=s[i]*7;break;
case
2:t[i]=s[i]*9;break;
case
3:t[i]=s[i]*10;break;
case
4:t[i]=s[i]*5;break;
case
5:t[i]=s[i]*8;break;
case
6:t[i]=s[i]*4;break;
case
7:t[i]=s[i]*2;break;
case
8:t[i]=s[i]*1;break;
case
9:t[i]=s[i]*6;break;
case
10:t[i]=s[i]*3;break;
case
11:t[i]=s[i]*7;break;
case
12:t[i]=s[i]*9;break;
case
13:t[i]=s[i]*10;break;
case
14:t[i]=s[i]*5;break;
case
15:t[i]=s[i]*8;break;
case
16:t[i]=s[i]*4;break;
case
17:t[i]=s[i]*2;break;
}
sum=sum+t[i];
}
printf("前17位相乘后的和为%ld\n",sum);
m=sum%17;
printf("对17取余后的值位:",m);
switch(m)
{
/*各个余数所对应第18位身份证号1
0
X
9
8
7
6
5
4
3
2*/
case
0:t18=1
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
1:t18=0
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
2:t18c='X';printf("这是一个合法的身份证号码,第18位是%c",t18c);break;
case
3:t18=9
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
4:t18=8
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
5:t18=7
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
6:t18=6
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
7:t18=5
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
8:t18=4
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
9:t18=3
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case
10:t18=2
;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
default:printf("这不是一个合法的身份证号码");
}
printf("\n");
}
B. SQL中如何将数字型转换为日期型
平时为了方便存储和查询,通常会选择将时间存储为毫秒或者秒的形式。但是页面显示的时候很不直观,需要将整型数字转化成日期格式,转化方式包括下面几种:
1、秒数与Date之间的转换:select from_unixtime(1388776825);
如果想逆向转换,可以通过unix_timestamp()函数反向转换。用法如下:
SELECT UNIX_TIMESTAMP() ;//获取当前时间的秒数
SELECT UNIX_TIMESTAMP('2014-03-23 10:10:40') ; //获取指定日期格式的秒数
SELECT UNIX_TIMESTAMP('2014-03-23') ; //获取指定日期格式的秒数
(2)sqlserver转日期扩展阅读:
一、date型换int型
SELECT UNIX_TIMESTAMP(‘2017-9-22 13:54:45’)
二、int型转date型
SELECT FROM_UNIXTIME(1506059685)
需要注意的是,一个int值转换为DateTime 需要从1970年1月1日0点0分0秒开始,但是必须明确,这个时间是标准时间,而不是北京时间。
数据库中数据的时间都是以标准时间为准绳的。所以必须转换到当前时间, 中国是+8 ,可以简单的调用ToLocalTime达到效果。
C. sqlserver中如何把数字转换成时间的格式
把数字转换为时间,可以使用SQL的常用函数,常用的有下面四个函数,都给列了出来:
(1)dateadd函数 作用是可以在向指定日期加上一段时间的基础上,返回新的 datetime 值;
(2)datediff函数 返回跨两个指定日期的具体返回格式的差值;
(3)datepart函数 返回代表指定日期的指定日期部分的整数;
(4)datename函数 返回代表指定日期的指定日期部分的字符串。
D. sqlserver 如何把日期型转换成指定格式
select convert(char(8),(datepart(year,getdate())*100+datepart(month,getdate()))*100+datepart(day,getdate()))
+ convert(char(6),(datepart(hour,getdate())*100+datepart(mi,getdate()))*100+datepart(ss,getdate()))
把getdate()换成你要转换的时间即可
好象是没有了。其中的加也要转换成字符型后才能加,如果不转换加到分钟时会发生溢出。
select convert(char(8),(datepart(year,'2010.1.4 16:28:56')*100+datepart(month,'2010.1.4 16:28:56'))*100+datepart(day,'2010.1.4 16:28:56'))
+ convert(char(6),(datepart(hour,'2010.1.4 16:28:56')*100+datepart(mi,'2010.1.4 16:28:56'))*100+datepart(ss,'2010.1.4 16:28:56'))
E. sql字符串转换成日期
sql字符串转换成日期语句:日期=convert(datetime,字符串)。
CONVERT ()语句的用途是将一种数据类型的表达式转换为另一种数据类型的表达式。格式是CONVERT ( data_type [ ( length ) ] , expression [ , style ] )。
expression:任何有效的表达式。
data_type:目标数据类型。这包括xml、bigint和sql_variant。不能使用别名数据类型。
length:指定目标数据类型长度的可选整数。默认值为 30。
style:指定 CONVERT 函数如何转换expression的整数表达式。如果样式为 NULL,则返回 NULL。该范围是由data_type确定的。
返回类型:返回转换为data_type的expression。
(5)sqlserver转日期扩展阅读:
如果expression为 date 或 datetime 数据类型,则其他值作为 0 进行处理。SQL Server 使用科威特算法来支持阿拉伯样式的日期格式。
style 将datetime和smalldatetime数据转换为字符串时所选用的由SQL Server系统提供的转换样式编号,不同的样式编号有不同的输出格式;一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到。
F. 从sqlserver数据库中提取日期,并把年月日分别截取出来
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
G. sqlserver 字符串转日期
不知道你的字符串类型的日期是什么样子的,下面有一个例子:
Test_OldTable是包含19990101等nvarchar数据类型的表,
Test_NewTable是包含DateTime数据类型的表
sql语句:
INSERT INTO Test_NewTable(NewDate)
SELECT CAST(OldDate AS DateTime)
FROM Test_OldTable
其他的方法还有很多,给你个链接,看看吧,网上多找找http://..com/question/97171114.html
H. sqlserver 日期格式转换
--输入201401
--月初时间
selectdateadd(day,datediff(day,0,convert(datetime,'201401'+'01',112)),0)
--月末时间
selectdateadd(ss,-1,dateadd(month,datediff(month,-1,convert(datetime,'201401'+'01',112)),0))
--输入2014
--年初时间
selectdateadd(year,datediff(year,0,convert(datetime,'2014'+'0101',112)),0)
--年末时间
selectdateadd(ss,-1,dateadd(year,datediff(year,0,convert(datetime,'2014'+'0101',112)),0))
I. 求助:sqlserver数据库中的日期格式怎么转换
//方案1:转换SQL语句:convert(varchar(20),GETDATE(),120)
//方案2:
//Date now = new Date();
//now.toLocaleString();
//方案3:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now = new Date();
String formatNow = sdf.format(now);
J. SQLSERVER 字符串转时间格式
你好的~
你这个格式要手动转化,如下所示:
selectCONVERT(datetime,SUBSTRING('2019032308:31:15',1,4)+'-'+SUBSTRING('2019032308:31:15',5,2)+'-'+SUBSTRING('2019032308:31:15',7,2)
+''+SUBSTRING('2019032308:31:15',9,16),21)
望采纳!