总结一点Access与Sqlserver的sql的差异
最近整理出来的.如果不完全的话希望大家补充.
在access中,转换为大写的sql函数是ucase,在sqlserver中,转换为大写的函数是upper;在access中,转换为小写的函数是lcase,在sqlserver中,转换为小写的函数是lower;在access中,取当前时间的函数是now,另外还有一个取日期函数date,在sqlserver中,取当前的函数是getdate,没有直接的取日期函数。
在access中,datediff()和dateadd函数表示时间类型的部分必须用单引号括起来,写成这种样式:select datediff('n',addtime,now()) from * ……,或者select dateadd('d',5,now()),而在sqlserver中,必须写成select datediff(n,addtime,getdate()) from *……,或者select dateadd(d,5,getdate())。
在access中,字符串类型的数据不能用replace函数,但可以用 函数,备注类型的数据也一样。字符串类型的数据和备注类型的数据都可以用like来查找匹配。在sqlserver中,字符串类型的数据可以用replace函数和 函数,但是ntext类型的数据不能。而且sqlserver中ntext类型的数据还不能用like来查找匹配。
不过access和sqlserver都支持系统变量@@identity,这一点知道的人不多。
其它异同之处,容我一一补充。
另外我得继续说区别:在access的sql函数dateadd和datediff中,表示年的时间类型是yyyy,月是m,天是d,小时是h,分钟是n,秒是s。但是在sqlserver中,年是yyyy或yy,月是mm或m,天是dd或d,小时是hh,分是mi或n,秒是ss或s。特别是表示那个小时的时间类型特格外注意区别。
我觉得,因为sqlserver函数多,所以相较之下比较容易编程,而Access函数少,编程反而麻烦。不过幸好Access还支持vba
我还发现了sqlserver与Access的一点区别:
在sqlserver中,可以用这样的语法:
update *** set ***=*** where *** in (select ** from *** where *******)
和
select **** from **** where ***=(select *** from *** where ****)
但是在Access中,只能用后者。也就是说,在Access中,只查询只能用于select语句不能用于update语句。
不过我发现Access同时也支持这样的sql:
update *** set ***=(select *** from *** where ***=***) where ***=***
和
delete from *** where *** in (select *** from *** where ***=***)
这样的sql。
access函数大全
CDate 将字符串转化成为日期 select CDate("2005/4/5")
Date 返回当前日期
DateAdd 将指定日期加上某个日期se
相关文档:
E盘根目录新建一个Excel文件aa.xls后测试如下代码
use tempdb
go
if (object_id ('udf_getExcelTableNames' ) is not null )
drop function dbo .udf_getExcelTableNames
go
create function udf_getExcelTableNames (@filename varchar (1000 ))
returns @t table (id int , name varchar ( ......
要求: 按 lct1, lct2 排序后的前两条纪录,显示为下列结果:
item_cd1 item_cd2 lct
01 a   ......
Sql常用语法下列语句部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句:
1、说明:创建数据库
CREATE ......
1.用一条Sql语句查询出每门功课都大于80分的学生姓名
Name
Class
Result
张三
语文
56
张三
数学
88
李四
语文
92
李四
数学
100
王五
语文
88
王五
数学
99
王五
英语
99
-------------------------------------------------------------------------------
答案:
SELECT DISTINCT nam ......
sql group by 用法
2009-07-16 11:01:00 业界 | 评论(0) | 浏览(1676)
group by主要是用来分组的,怎么个分组呢?
以下用两个例子说明两个使用方面,1是合理的返回合计值(防止笛卡尔积现象),2是用分组来找出重复的记录
============================================================== ......