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操 ...
随机推荐
- Nitrous.IO融资665万美元 帮助开发者省去配置调试等工作-CSDN.NET
Intro to Computer Science Class Online (CS101) - Udacity Building a Search Engine Nitrous.IO融资665万美元 ...
- 沙朗javascript(两)正则表达式
以下提到的文章javascript基础,今天我说些什么javascript正则表达式正确. 说到这首先要问了,什么是正則表達式,正則表達式能干什么? 正則表達式:一个正則表達式就 ...
- openstack 源码分析
Nova对于底层Hypervisor(如KVM/QEMU等)的调用与管理主要通过LibvirtDriver类,nova/virt/libvirt/driver.py Libvirt对Hyperviso ...
- objective-C学习笔记(五)函数成员:初始化器和析构器
初始化器:init 对象初始化器: -(id)init 可以重载多个. 类型初始化器: +(id)initialize只能有一个. 对象初始化器: 初始化对象实例时,init通常和alloc(手动内存 ...
- 驴吃胡萝卜问题——牛客/FEI
一个商人骑一头驴要穿越1000公里长的沙漠,去卖3000根胡萝卜.已知驴一次性可驮1000根胡萝卜,但每走1公里又要吃掉1根胡萝卜.问:商人最多可卖出多少胡萝卜? 一个商人骑一头驴要穿越1000公里长 ...
- 如何将 MFC ActiveX 控件标记为安全,脚本和初始化
MSDN原文.ActiveX控件标记安全(可以不仅仅是MFC ActiveX) 概要 默认情况下,MFC ActiveX 控件未标记为对脚本编写是安全的和对初始化是安全的.控制运行在 Internet ...
- cocos2dx中Action汇总
本文由qinning199原创, 转载请注明:http://www.cocos2dx.net/?p=119 今天总结一下cocos2dx中的一些Action动作,其中To表示到达某个点,而By表示偏移 ...
- Java "JSON中无分隔符日期字符串处理"
Json 中日期类型数据处理,服务端传输的日期没有分隔符,一般格式就两种,[20151212121212]即yyyyMMddhhmmss和[121212]hhmmss import java.text ...
- Yii2.0中文开发向导——删除数据
直接 model 删除 $model = User::find($id); $model->delete(); 带有条件的删除 $connection ->createCommand() ...
- awk的用法(转)
awk 用法:awk ' pattern {action} ' 变量名 含义 ARGC 命令行变元个数 ARGV 命令行变元数组 FILENAME 当前输入文件名 FNR 当前文件中的记录号 FS 输 ...