MySql和Oracle的日期转换到底有哪些不同?我们来比较一下

  1.MySql和Oracle的日期转换

  mysql中有2种日期格式DATE和TIME,oracle只有一种日期格式DATE。

  oracle> select to_char(sysdate,‘yyyy-mm-dd‘) from dual;

  oracle> select to_char(sysdate,‘hh24-mi-ss‘) from dual;

  mysql> select date_format(now(),‘%Y-%m-%d‘);

  mysql> select time_format(now(),‘%H-%i-%S‘);

  2.MySql和Oracle修改字段长度或类型

  oracle>ALTER TABLE tableName modify column columnName 类型;

  mysql>ALTER TABLE tableName modify(columnName 类型);

  3.组函数规则不一样

  mysql中组函数在select语句中可以随意使用。但在oracle中如果查询语句中有组函数,那其他列名必须是组函数处理过的,或者是group by子句中的列否则报错。

  例如:oralce>select name,count(money) from user group by name;

  mysql>select name,count(money) from user;

  4.自增长和序列

  mysql有自增长类型,自增长列的值会依次自动增加,不需要操作。但oracle没有自增长类型,oracle有序列号,序列号需要手动添加才行。

  oracle>create sequence customer_id_seq increment by 2 start with 1

  oracle>create table customer(id int primary key not null, name varchar(15));

  oracle>insert into customer values(customer_id_seq.curval, "name1"),(customer_id_seq.nextval, "name2");

  mysql>create table customer(id int auto_increment primary key not null, name varchar(15));

  mysql>insert into customer(name) values("name1"),("name2");

  5.引号的处理

  mysql可以处理双引号和单引号包裹的字符串,而oarcle则只能处理是单引号包裹的字符串

  oracle>select * from user where name=‘张三‘;

  mysql>select * from user where name="张三";

  6.分页

  mysql的分页比较简单,可以用limit startNum,pageNum即指定起始位置和一页的数据量来实现。

  oracle的分页则必须使用rownum来表明分页位置,而且rownum只能小于某值,不能大于某值,故而rownum和where联用才能完成数据范围的控制,where<=页数<=rownum值。

  oracle>

  7.空字符串比较

  mysql中的空值内容可以是空字符串,但oracle的空值只能是null,不能包含空字符串。

  8.模糊查询比较

  mysql和oarcle都可以用 字段名 like %str% 来进行模糊查询,但是oracle使用like查询时不能使用索引。

时间: 2024-10-06 22:41:39

MySql和Oracle的日期转换到底有哪些不同?我们来比较一下的相关文章

oracle中日期转换

oracle中,日期转换函数有很多,常用命令如下: to_char()命令将时间戳转换为用户规定的日期格式,如: SELECT TO_CHAR(sysdate,'YYYY-MM-DD hh24:mi:ss') FROM DUAL; 语法:TO_CHAR(X [,format]) 说明:将X按format格式转换成字符串.X可以是日期或者数字或时间戳,format是一个规定了X采用何种格式转换的格式字符串 to_date()命令可以将一个日期格式的字符串转换成date类型数据,如: SELECT 

mysql与oracle的日期/时间函数小结

前言 本文的日期/时间全部格式化为”2016-01-01 01:01:01“形式: MONITOR_TIME为数据库表字段: 字符串与日期/时间相互转换函数 Oracle 日期/时间转字符串函数:to_char(t.MONITOR_TIME, 'yyyy-mm-dd hh24:mi:ss') as monitorTime 字符串转日期/时间函数:TO_Date(”2016-01-01 01:01:01“, 'yyyy-mm-dd hh24:mi:ss') Mysql 日期/时间转字符串函数:DA

Oracle中日期转换函数

TO_DATE TO_DATE(char[,fmt[nlsparams]]) char:要转换的字符串 fmt:格式 nlsparams:指定日期语言 例如:查询2002年以后入职的员工: select * from emp where hiredate>to_date('2002-01-01','YYYY-MM-DD'); 常见日期格式见下表: YY:2位数字年份 YYYY:4位数字年份 MM:2位数字月份 MON:简拼的月份 MONTH:全拼的月份 DD:2位数字的天 DY:周几的缩写 DA

MySQL与Oracle(二)---日期对比(MySQL)

MySQL与Oracle的日期函数对比(一) 一.SQL 短日期格式:yyyy-m-d SELECT REPLACE(CONVERT(varchar(10),getdate(),120),N'-0','-') 长日期格式:yyyy年mm月dd日 SELECT STUFF(STUFF(CONVERT(char(8),getdate(),112),5,0,N'年'),8,0,N'月')+N'日' 短日期格式:yyyy年m月d日 SELECT DATENAME(Year,getdate())+N'年'

oracle日期转换报ORA-01810: 格式代码出现两次 01810. 00000 -&#160; &quot;format code appears twice&quot;

描述 执行如下的SQL select TO_DATE('2018-1-9 12:41:00','yyyy-MM-dd hh24:mm:ss') from dual; 然后就报了如下的错误 ORA-01810: 格式代码出现两次 00000 - "format code appears twice" Cause: Action: select RECEIVEDATE,RECEIVETIME,TO_DATE(concat(RECEIVEDATE,concat(' ',RECEIVETIME

oracle 字符串与日期转换sql

常用sql语句: select to_char(sysdate,'yy-mm-dd hh24:mi:ss') from dual;   //显示:08-11-07 13:22:42 select to_date('2005-12-25,13:25:59','yyyy-mm-dd,hh24:mi:ss') from dual; //显示:2005-12-25 13:25:59 获取系统时间: select sysdate from dual; 转换的格式: 表示year的:y  表示年的最后一位

MYSQL中的日期转换

MYSQL中的日期转换 网址:?http://www.eygle.com/digest/2006/09/mysql_date_convert.html 对于每个类型拥有的值范围以及并且指定日期何时间值的有效格式的描述见7.3.6 日期和时间类型. 这里是一个使用日期函数的例子.下面的查询选择了所有记录,其date_col的值是在最后30天以内: mysql> SELECT something FROM table?WHERE TO_DAYS(NOW()) - TO_DAYS(date_col)

SQL语句优化系列四(Oracle数据库日期格式转换)

Oracle数据库日期格式转换 select sysdate from dual select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') as mydate from dual select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as mydate from dual select to_number(to_char(sysdate,'yyyymmddhh24miss')) as mydate from dual

Mysql日期转换函数、时间转换函数

Mysql日期转换函数.时间转换函数 一.MySQL 获得当前日期时间 函数 1,获得当前日期+时间(date + time)函数:now(): select now(); 结果:2008-08-08 22:20:46 2,获得当前日期+时间(date + time)函数:sysdate()sysdate() 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了, sysdate() 在函数执行时动态得到值: select sysdate(); 结果:2008-08