下面链接是sql函数大全
创新互联是一家集网站建设,靖边企业网站建设,靖边品牌网站建设,网站定制,靖边网站建设报价,网络营销,网络优化,靖边网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
实例
下面的脚本使用 CONVERT() 函数来显示不同的格式。我们将使用 GETDATE() 函数来获得当前的日期/时间:
CONVERT(VARCHAR(19),GETDATE())
CONVERT(VARCHAR(10),GETDATE(),110)
CONVERT(VARCHAR(11),GETDATE(),106)
CONVERT(VARCHAR(24),GETDATE(),113)
结果类似:
Dec 29 2008 11:45 PM
12-29-2008
29 Dec 08
29 Dec 2008 16:25:46.635
sqlserver:
select right(cast('0000000000'+rtrim(字段) as varchar(20)),7)
oralce:
select lpad(字段, 7 , '0') from dual
具体什么数据库?
以sqlserver,mysql,oracle各自为例:
sqlserver:
create table test
(点名 varchar(20));
insert into test values ('HS901');
insert into test values ('HS9010');
insert into test values ('HS9010');
执行:
select LEFT(点名+'00000000',8) from test
结果:
mysql:创建表插入数据过程都差不多,不赘述,执行:
create table test
(点名 varchar(20));
insert into test values ('HS901');
insert into test values ('HS9010');
insert into test values ('HS9010');
结果:
oracle:执行:
select rpad(点名,8,'0') from test
结果:
咱们来看:
cast('000000000'+convert(int,code)as varchar(20))
首先:
convert(int,code) :你把code 转为 int
然后
'000000000'+convert(int,code)我估计sqlserver肯定把表达式作为数字相加了,那么0000...的相加就没有作用了。
最后
就不是你要的结果了。
大致应该这样:
SELECT
right(cast('000000000'+rtrim(code) as varchar(20)),10),code,
id,pydate,isnull(lzdate,'9999-12-31'),0
FROM zlemployee