to postren(小虫) 要是能含有一个逗号的话,我早就用format函数解决了,也用不着上来问。我用的是别人的一个接口,里面的参数是一个字段串类型,其中逗号是对这个接口来说是特殊字符,逗号两边调用的时候会被切割开来的。另外数据库结构也是不能改的,是人家的数据库,所以不能改字段格式。
看他接口如何处理的, 把你的sql语句用引号引起来,如果他还是分割处理的话,基本无望
ADateTime不是一个table的字段么,字段名还可以更改?
奇怪,奇怪! 我做实验,怎么没有逗号呢?rq格式是"常规日期",2005-09-12 10:10:10 with DM1.QryBMan do begin Try Close; SQL.Clear ; SQL.Add('SELECT Format(rq,"yyyy-mm-dd") AS rq FROM CardDetil'); Open ; Except Close; End; end;
To:myanwei() 楼主的意思是表达式里面都不能有,,你的那个查询语句里面就有,我晕阿
lzf1010(深宇) to cncharles(旺仔) 这个语句产生的不一定是我要求的那个格式,而且假如ADateTime为null的话会报错 我晕,如果为空,那你怎么显示时间,你设置where time is not null
用CONVERT函数阿,第三个参数不是可以设置格式的 Without century (yy) With century (yyyy) Standard Input/Output** - 0 or 100 (*) Default mon dd yyyy hh:miAM (or PM) 1 101 USA mm/dd/yy 2 102 ANSI yy.mm.dd 3 103 British/French dd/mm/yy 4 104 German dd.mm.yy 5 105 Italian dd-mm-yy 6 106 - dd mon yy 7 107 - Mon dd, yy 8 108 - hh:mm:ss - 9 or 109 (*) Default + milliseconds mon dd yyyy hh:mi:ss:mmmAM (or PM) 10 110 USA mm-dd-yy 11 111 JAPAN yy/mm/dd 12 112 ISO yymmdd - 13 or 113 (*) Europe default + milliseconds dd mon yyyy hh:mm:ss:mmm(24h) 14 114 - hh:mi:ss:mmm(24h) - 20 or 120 (*) ODBC canonical yyyy-mm-dd hh:mi:ss(24h) - 21 or 121 (*) ODBC canonical (with milliseconds) yyyy-mm-dd hh:mi:ss.mmm(24h) - 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(no spaces) - 130* Kuwaiti dd mon yyyy hh:mi:ss:mmmAM - 131* Kuwaiti dd/mm/yy hh:mi:ss:mmmAM
IIF(Month(ADateTime) > 10, CStr(Month(ADateTime)), '0' + CStr(Month(ADateTime))) + '-' +
IIF(Day(ADateTime) > 10, CStr(Day(ADateTime)), '0' + CStr(Day(ADateTime))) + ' ' +
IIF(Hour(ADateTime) > 10, CStr(Hour(ADateTime)), '0' + CStr(Hour(ADateTime))) + ':' +
IIF(Minute(ADateTime) > 10, CStr(Minute(ADateTime)), '0' + CStr(Minute(ADateTime))) + ':' +
IIF(Second(ADateTime) > 10, CStr(Second(ADateTime)), '0' + CStr(Second(ADateTime)))as aaFROM T1;
是日期类型的字段to postren(小虫)
我要求的是不能出现,号,你那个出现了N次了
CAST(YEAR(ADateTime) AS VARCHAR(4))+'-'+
CAST(Month(ADateTime) AS VARCHAR(2))+'-'+
CAST(Day(ADateTime)AS VARCHAR(2))
Table1
access好像不支持cast这个函数的吧
SELECT Format(ADateTime, 'yyyy-mm-dd hh:nn:ss') AS ADateTime
FROM T1;
而且你那个format里的参数也写反了
FROM Table1
这个语句产生的不一定是我要求的那个格式,而且假如ADateTime为null的话会报错
而且你那个format里的参数也写反了
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
怎么会写反了呢?Access中测试过的,嘿嘿
要是能含有一个逗号的话,我早就用format函数解决了,也用不着上来问。我用的是别人的一个接口,里面的参数是一个字段串类型,其中逗号是对这个接口来说是特殊字符,逗号两边调用的时候会被切割开来的。另外数据库结构也是不能改的,是人家的数据库,所以不能改字段格式。
把你的sql语句用引号引起来,如果他还是分割处理的话,基本无望
我做实验,怎么没有逗号呢?rq格式是"常规日期",2005-09-12 10:10:10
with DM1.QryBMan do
begin
Try
Close;
SQL.Clear ;
SQL.Add('SELECT Format(rq,"yyyy-mm-dd") AS rq FROM CardDetil');
Open ;
Except
Close;
End;
end;
楼主的意思是表达式里面都不能有,,你的那个查询语句里面就有,我晕阿
lzf1010(深宇)
to cncharles(旺仔)
这个语句产生的不一定是我要求的那个格式,而且假如ADateTime为null的话会报错
我晕,如果为空,那你怎么显示时间,你设置where time is not null
Without century (yy) With century (yyyy)
Standard
Input/Output**
- 0 or 100 (*) Default mon dd yyyy hh:miAM (or PM)
1 101 USA mm/dd/yy
2 102 ANSI yy.mm.dd
3 103 British/French dd/mm/yy
4 104 German dd.mm.yy
5 105 Italian dd-mm-yy
6 106 - dd mon yy
7 107 - Mon dd, yy
8 108 - hh:mm:ss
- 9 or 109 (*) Default + milliseconds mon dd yyyy hh:mi:ss:mmmAM (or PM)
10 110 USA mm-dd-yy
11 111 JAPAN yy/mm/dd
12 112 ISO yymmdd
- 13 or 113 (*) Europe default + milliseconds dd mon yyyy hh:mm:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 or 120 (*) ODBC canonical yyyy-mm-dd hh:mi:ss(24h)
- 21 or 121 (*) ODBC canonical (with milliseconds) yyyy-mm-dd hh:mi:ss.mmm(24h)
- 126(***) ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(no spaces)
- 130* Kuwaiti dd mon yyyy hh:mi:ss:mmmAM
- 131* Kuwaiti dd/mm/yy hh:mi:ss:mmmAM