‘壹’ 关于sql server中的format函数
用convert(varchar(7),cdate,120)代替format(...)
‘贰’ SQL中format函数问题
不知道是不是这个意思,如果你求出来的数 是0 ,结果就是0
你比如select一下试试, "0;\x\o" 如果取出来是0,结果就会变成 xo ,我没安装sql,你试试。
‘叁’ 有没有类似string.format()这样的sql函数
额 针对sql语句
比如sql="select*from student where studentNo=@studentno "
SqlParameter para=new SqlParameter(“@studentno”,你要替换的值);
这样对sql语句也有String.format()的效果,还可以防止注入攻击
‘肆’ 如果在MS Sql中 格式化 数据 比如将 1,2 ,3 转换为 001,002,003 类似于access里的format()函数
--将 1,2 ,3 转换为 001,002,003
SELECT REPLACE(STR(1,3),' ','0')
SELECT REPLACE(STR(2,3),' ','0')
SELECT REPLACE(STR(3,3),' ','0')
‘伍’ 为什么在sql sever中使用format对文字格式化,提示为:'FORMAT' 不是可以识别的 内置函数名称
format在SQL SERVER上不能用,SQL SERVER上规范日期格式是用CONVERT(),FORMAT在ACCESS中能用。
‘陆’ My SQL取得当前时间的函数是什么格式化日期的函数是什么
取得当前时间用 now() 就行。
在数据库中格式化时间 用DATE_FORMA T(date, format) .
根据格式串format 格式化日期或日期和时间值date,返回结果串。
可用DATE_FORMAT( ) 来格式化DATE 或DATETIME 值,以便得到所希望的格式。根据format字符串格式化date值:
%S, %s 两位数字形式的秒( 00,01, . . ., 59)
%i 两位数字形式的分( 00,01, . . ., 59)
%H 两位数字形式的小时,24 小时(00,01, . . ., 23)
%h, %I 两位数字形式的小时,12 小时(01,02, . . ., 12)
%k 数字形式的小时,24 小时(0,1, . . ., 23)
%l 数字形式的小时,12 小时(1, 2, . . ., 12)
%T 24 小时的时间形式(h h : m m : s s)
%r 12 小时的时间形式(hh:mm:ss AM 或hh:mm:ss PM)
%p AM 或P M
%W 一周中每一天的名称( S u n d a y, Monday, . . ., Saturday)
%a 一周中每一天名称的缩写( Sun, Mon, . . ., Sat)
%d 两位数字表示月中的天数( 00, 01, . . ., 31)
%e 数字形式表示月中的天数( 1, 2, . . ., 31)
%D 英文后缀表示月中的天数( 1st, 2nd, 3rd, . . .)
%w 以数字形式表示周中的天数( 0 = S u n d a y, 1=Monday, . . ., 6=Saturday)
%j 以三位数字表示年中的天数( 001, 002, . . ., 366)
% U 周(0, 1, 52),其中Sunday 为周中的第一天
%u 周(0, 1, 52),其中Monday 为周中的第一天
%M 月名(J a n u a r y, February, . . ., December)
%b 缩写的月名( J a n u a r y, February, . . ., December)
%m 两位数字表示的月份( 01, 02, . . ., 12)
%c 数字表示的月份( 1, 2, . . ., 12)
%Y 四位数字表示的年份
%y 两位数字表示的年份
%% 直接值“%”
select date_format(日期字段,’%Y-%m-%d’) as ‘日期’ from test
‘柒’ excel vba 怎么在sql中使用format函数
format(now(),"yyyyMMdd")
我喜欢把时间用文本保存,个人喜好
‘捌’ 请求举例讲解sql语法中的format()函数
DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')
DATE_FORMAT(NOW(),'%m-%d-%Y')
DATE_FORMAT(NOW(),'%d %b %y')
DATE_FORMAT(NOW(),'%d %b %Y %T:%f')
结果:
Dec 29 2008 11:45 PM
12-29-2008
29 Dec 08
29 Dec 2008 16:25:46.635
‘玖’ 请问:SQL中格式化显示数据用的是哪个函数
SELECT CONVERT(DECIMAL(18,2),金额) FROM 销售单;
你试一下这个应该可以
CONVERT函数是转换函数,CONVERT(DECIMAL(18,2),金额)意思是转换成小数类型(小数点后保持两位)。
‘拾’ 怎样在sql语句内加上formatdatetime函数
formatdateTime()函数返回表达式,此表达式已被格式化为日期或时间 表达式 formatdateTime(Date, [, Namedformat]) 允许数据类型: Namedformat 指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate.
Create function FormatDateTime(@Date datetime,@formatStr varchar(20))
returns varchar(16)
as
begin
declare @tempstr varchar(20),@index int,@retStr varchar(20),@formatLen int,@str1 varchar(6),@str2 varchar(6),@str3 varchar(6),@j int
declare @tempformat varchar(20)
select @tempformat=@formatStr,@formatStr = Upper(@formatStr),@index=-1,@retstr=''
if @formatStr='MM/DD/YYYY'
set @retstr= convert(varchar(10),@date,101)
else if @formatstr='YYYY-MM-DD'
set @retstr = Convert(char(10),@Date,20)
else if @formatStr='YYYY.MM.DD'
set @retstr= Convert(varchar(10),@Date,102)
else if @formatStr='YYYY/MM/DD'
set @retstr= Convert(varchar(10),@Date,111)
else if @formatStr='DD/MM/YYYY'
set @retstr= Convert(varchar(10),@Date,103)
else if @formatStr='DD.MM.YYYY'
set @retstr= Convert(varchar(10),@Date,104)
else if @formatStr='DD-MM-YYYY'
set @retstr= Convert(varchar(10),@Date,105)
else if @formatStr='YYYYMMDD'
set @retstr= Convert(varchar(10),@Date,112)
else
begin
select @tempformat=@formatStr,@formatLen = len(@formatStr)
if @formatLen>8
begin
set @index=charindex('M',@tempformat)
select @str1=right(left(@tempformat,@index-1),@index-5),@str2=right(@tempformat,@formatLen-@index-1)
select @index=charindex('D',@str2),@str3=@str2
set @str2=left(@str2,@index-1)
set @str3=right(@str3,len(@str3)-@index-1)
end
select @tempstr = Convert(char(10),@Date,20),@str1=isnull(@str1,''),@str2=isnull(@str2,''),@str3=isnull(@str3,''),@j=0
while @index <> 0
begin
set @index = charindex('-',@tempstr)
if @j=0
select @retstr=left(@tempstr,@index-1) @str1,@j=@j 1
else set @retstr=@retstr left(@tempstr,@index-1) @str2
select @tempstr=right(@tempstr,len(@tempstr)-@index)
set @index= charindex('-',@tempstr)
end
set @retstr=@retstr @tempstr @str3
end
return @retstr
end
用法如下:
select dbo. FormatDatetime(GetDate(),'YYYY年MM月DD日')
@formatStr格式串支持:
MM/DD/YYYY
YYYY-MM-DD
YYYY.MM.DD
YYYY/MM/DD
DD/MM/YYYY
DD.MM.YYYY
DD-MM-YYYY
YYYYMMDD或者
类似YYYY年MM月DD日
YYYY MM之间最多支持两个汉字,MM DD之间也最多支持两个个汉字
select dbo. FormatDatetime(GetDate(),'YYYY元年MM月份DD日')
不知道你什么数据库
自己创建存储过程总不会错^_^分给我吧