sql差异
类别 |
MS SQL Server |
My SQL |
PG SQL |
Oracle |
Access |
| 自增 | identity(1,1) |
auto_increment ALTER TABLE 'tableName' AUTO_INCREMENT=100 |
|||
| 日期 | getdate(),getutcdate() |
now(),utc_timestamp() |
|||
| 执行储存过程 | exec(ute) |
call |
|||
| 存储过程跳出 | return |
不能使用return |
|||
| 字符串相加 | '1'+'2' |
concat('1','2')
|
|| 或 concat | ||
| dual表 | x |
select 1 (from dual where 1>0) |
select 1 from dual |
x | |
| update行数据 | 同时 |
更新依次从左到右 |
同时 |
||
| 通配符 | % 任意长度,_ 单个字符 |
% 任意长度,_ 单个字符 |
% 任意长度,_ 单个字符 |
* 任意长度,? 单个字符 | |
| 取模 | 7%6 |
7%6 |
MOD(7,6) |
7 MOD 6 | |
| 星期几 | DATEPART(DW,date) |
DAYOFWEEK(data) |
TO_CHAR(date,'D') |
DatePart('w',date) | |
| 自然对数 | LOG |
LN |
LN |
LOG | |
| True | 1 |
1 |
1 |
-1 | |
| 唯一码 | NewID() |
UUID() |
SYS_GUID() |
||
| 后n行 | 借助top |
offset n |
借助rownum |
||
| 更改表名 |
EXEC sp_rename 'table1', 'table2'; |
rename table table1 to table2; |
alter table table1 rename to table2 |
||
| 更改字段名 |
EXEC sp_rename N'dbo.test_tab.val', N'val2', 'COLUMN' |
alter table t change physics physisc char(10); |
|||
| 使用关键字 |
[type] |
"type" | |||
| 默认时间 |
datetime getDate() |
TIMESTAMP CURRENT_TIMESTAMP() | |||
| between and范围 |
0<=x<=1 |
0<=x<=1 | |||
| 参数符号 |
@id |
?id | :id | ? | |
| 列信息 |
SELECT c.name AS ColumnName , |
show full columns in {0}; |
select distinct
column_name, format_type(atttypid, atttypmod) dataType, is_nullable, description, (pg_attribute.attnum =Any(pg_constraint.conkey)) isPrimaryKey, col.ordinal_position from pg_class c inner join information_schema.columns col on c.relname=col.table_name left join pg_description d on c.oid=d.objoid and col.ordinal_position =d.objsubid left join pg_constraint on pg_constraint.conrelid = c.oid and pg_constraint.contype='p' left join pg_attribute on pg_attribute.attrelid = c.oid and pg_attribute.attname=col.column_name where c.relname='{0}' order by ordinal_position; |
||
| 修改列默认值 |
ALTER TABLE dbo.T_Product ADD CONSTRAINT DF_T_Product_ProductSort DEFAULT 0 FOR ProductSort |
||||
| 查询表是否存在 |
--如果是实表可以用 --如果是临时表可以用 |
||||
| 删除索引 |
DROP INDEX index_name ON table_name |
ALTER TABLE table_name DROP INDEX index_name | DROP INDEX index_name | DROP INDEX index_name ON table_name | |
| 复制表结构 | select * into newTable from table where 1=0 |
create table newTable like table |
|||
| 库存在 | if exists(select * from master..sysdatabases where name=N'库名') | ||||
| 存储过程是否存在 | if exists(select 1 from sysobjects where id=object_id('所有者.存储过程名') and xtype='P') print '存在' else print '不存在' |
||||
| 视图存在 | --SQL Server 2000 IF EXISTS (SELECT * FROM sysviews WHERE object_id = '[dbo].[视图名]' --SQL Server 2005 IF EXISTS (SELECT * FROM sys.views WHERE object_id = '[dbo].[视图名]' |
||||
| 函数名是否存在 | if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[函数名]') and xtype in (N'FN', N'IF', N'TF')) |
sql差异的更多相关文章
- HiveQ与传统SQL差异
1. hive内连接支持什么格式? • SQL中对两表内联可以写成: select * from dual a,dual b where a.key = b.key; 或者: SEL ...
- mysql 和 sqlserver sql差异比较
mysql:select * from table_name limit 100,200;--取出从100到200的数据 获取时间:mysql:now() mysql tinyint(0,1) → b ...
- Mysql 和 SQLServer 使用SQL差异比较
查询前100条数据 #mysql ; #sqlserver * from table_name ; 从数据库.表 定位表 #mysql写法:库名.表名 select password from Inf ...
- 业界最具影响力MySQL精品文章荟萃(300篇)
MySQL是一种关联数据库管理系统,SQL语言是用于访问数据库的最常用标准化语言.本文档收集的资料有MySQL数据库备份与恢复,配置,解决方案等,供大家方便统一阅读. 博客专题 1 MySQL ...
- CSDN Oracle版精华帖荟萃
⑴ 关于大数据量的数据库设计问题http://bbs.csdn.net/topics/390382930⑵ ORA-00904标识符无效http://bbs.csdn.net/topics/39033 ...
- Php ORM 对象关系映射
ORM的全称是Object Relational Mapping,即对象关系映射.它的实质就是将关系数据(库)中的业务数据用对象的形式表示出来,并通过面向对象(Object-Oriented)的方式将 ...
- mysql之6备份恢复
基本意义: 将数据另存到其他设备,以便于出现问题时恢复数据 为什么要备份: 灾难恢复:需求改变:测试 几个事先需要考虑的问题: 可以容忍丢失多长时间的数据?恢复要在多长时间内完成?是否 ...
- Django Web开发【3】创建网络收藏夹
这一节我们将继续一个创建网络收藏夹应用,并学习视图.模型以及模板的处理过程. Django是一个MVC开发框架,但是它的控制器对应的为view,而视图对应为模板(template),模型对应model ...
- Python3+SQLAlchemy+Sqlite3实现ORM教程
一.安装 Sqlite3是Python3标准库不需要另外安装,只需要安装SQLAlchemy即可.本文sqlalchemy版本为1.2.12 pip install sqlalchemy 二.ORM操 ...
随机推荐
- iOS6与iOS7屏幕适配技巧
一.没有包装任何 导航控制器 或者 UITabBarController 1.控制器的view是UIScrollView\UITableView\UICollectionView时(控制器是UITab ...
- 有感PMI Exam Dev Workshop
有幸參加了PMI协会在上海举办的PMI Exam Development Workshop活动.这是PMI协会第二次在中国举办此活动,上一次是2009年北京. 我第一次參加,感觉收获非常多. 我们知道 ...
- WebSite 文件上传Demo
知识点: 1 <!--上传文件时: 1.必须使用Post方式来提交数据 2.必须设置表单的enctype属性 3.必须在表单中包含文件域.input t ...
- HTML5API___manifest
离线缓存 manifest 在html标签里面增加个属性 mainfest 就可以告诉浏览器缓存文件在哪里. <html manifest='show.manifest' xmlns=" ...
- iOS 时钟动画
在iOS开发中,定时器NSTimer并不能够准确的出发,通常使用NSTimer只能控制不需要精确处理的操作,而CADisplayLink就是在每次屏幕刷新时,通知系统.CADisplayLink最大的 ...
- C++ 之STL priority_queue
priority_queue 对于基本类型的使用方法相对简单.他的模板声明带有三个参数,priority_queue<Type, Container, Functional>Type 为数 ...
- 【Cocos2D-x 3.5实战】坦克大战(2)游戏开始界面
关于游戏的素材都是在网上到处搜集到的,然后自己再用二流的ps技术修修改改的,所以有可能混在一起有点不搭调(没有办法啊,没有美工Orz.. 项目已经建立好了,然后我们需要把我们下载的素材放到Resour ...
- MVC数据提交
关于请求方式(form表单) .form的几个属性 <form name="input" action="http://www.baidu.com" me ...
- hdu 3333 Turing Tree
题目链接 给n个数, m个询问, 每次询问输出区间内的数的和, 相同的数只计算一次. 数组里的数是>-1e9 <1e9, 可以把它离散以后用莫队搞... #include <iost ...
- java生成随机字符串
学习java comparable特性时候,定义如下Student类,需要需要随机添加学生姓名以及学号和成绩,这是java如何随机生成名字,根据我的查询,我找到目前java库支持两种方法. 1. or ...