mysql truncsysdate_Oracle迁移MySQL笔记

1,--在oracle代表注释 ,mysql/* */,#

2,|| oracle里面是表示连接符号,比如 A||B 那么就是AB

3,databaseLink创建好之后,比如名字为db_link_b 在b数据库中查询则如select * from view_ap_rule@db_link_b, 就ok了,建立databaseLink随便搜下就好了哈,如果用的plsql工具的话,昨天栏有个databaseLink对着他鼠标右键,新建就可以 了 例如 CREATE DATABASE LINK DBL_NAME CONNECT TO sa_fms IDENTIFIED BY sa_fms USING '10.101.22.110:1521/a'; 默认端口情况下 建不见本地服务名一个回事,建了就在using里面直接输本地服务名,没有见就按上面方法输入,2种方法都必须开本地监听

4,--Oracle trunc()函数的用法

/**************日期********************/

1.select trunc(sysdate) from dual  --2011-3-18  今天的日期为2011-3-18

2.select trunc(sysdate, 'mm')   from   dual  --2011-3-1    返回当月第一天.

3.select trunc(sysdate,'yy') from dual  --2011-1-1       返回当年第一天

4.select trunc(sysdate,'dd') from dual  --2011-3-18    返回当前年月日

5.select trunc(sysdate,'yyyy') from dual  --2011-1-1   返回当年第一天

6.select trunc(sysdate,'d') from dual  --2011-3-13 (星期天)返回当前星期的第一天

7.select trunc(sysdate, 'hh') from dual   --2011-3-18 14:00:00   当前时间为14:41

8.select trunc(sysdate, 'mi') from dual  --2011-3-18 14:41:00   TRUNC()函数没有秒的精确

5,MySQL

NOW()函数以'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。

CURDATE()以'YYYY-MM-DD'的格式返回今天的日期,可以直接存到DATE字段中。

CURTIME()以'HH:MM:SS'的格式返回当前的时间,可以直接存到TIME字段中。

6,left join 保留左边表的全部

right join 保留右边表的全部,即使左边没有

7,oracle 中的(+) 是什么意思?

左外连接或右外连接:

a.id1(+)=b.id2  这是右外边接

a.id1=b.id2(+)  这是左外连接,总之是左还是右,是与(+)在等号的哪边相反的

譬如

SELECT a.*, b.* from a(+) = b就是一个右连接,等同于select a.*, b.* from a right join b

SELECT a.*, b.* from a = b(+)就是一个左连接,等同于select a.*, b.* from a left join b

即" (+)"所在位置的另一侧为连接的方向,通常将全量集合与部分集合连接时,在部分集合的列后面带上(+),以达到没有匹配时,也要显示出一个null的效果

oracle中的(+)是一种特殊的用法,(+)表示外连接,并且总是放在非主表的一方。

例如左外连接: select A.a,B.a from A LEFT JOIN B ON A.b=B.b; 等价于 select A.a,B.a from A,B where A.b = B.b(+);

再举个例子,这次是右外连接: select A.a,B.a from A RIGHT JOIN B ON A.b=B.b; 等价于 select A.a,B.a from A,B where A.b (+) = B.b

8,拼接字符串

oracle:||

mysql:concat

将日期型转换成没有“-”的字符串 2012/9/3 13:41:17---->20120903014117

oracle:t.logis_order_id || to_char(t.pre_date,'yyyyMMddhhMMss') || to_char(t.cur_date,'yyyyMMddhhMMss') as id

mysql :select CONCAT(t.logis_order_id , extract(YEAR_MONTH from t.pre_date),extract(DAY_SECOND from t.pre_date) ,

extract(YEAR_MONTH from t.cur_date), extract(DAY_SECOND from t.cur_date)) as id

9,Oracle中nvl函数的用法和作用是什么?

select nvl(成绩列,0) from 表,如果表中成绩列有为NULL,就替换成0

对应

10,oracle中:

dbms_random.value():oracle中创建随机数

round(dbms_random.value(1, 999999999))

演示:select round(dbms_random.value(1, 999999999))from dual;

lpad:select lpad('3',2,0) from dual; 就是在 3 这个基础上左侧补 0,一共是2位, 结果为 03

rpad"函数从右边对字符串使用指定的字符进行填充

mysql: select round(round(rand(),4)*10000);产生10000以内,精确到第四位的随机数

11,left join on where

FROM PRICE_INFO A LEFT JOIN SALEROOM C ON A.SALESROOM_ID =C.SALESROOM_IDLEFT JOIN PRICE_NAME D ON A.PRICE_NAME_ID =D.PRICE_NAME_IDLEFT JOIN SUSLIKS_TEST.V_GOODS_PRICE_VIEW_JR JR ON A.PRICE_ID =JR.PRICE_IDLEFT JOIN SUSLIKS_TEST.V_GOODS_PRICE_VIEW_KR KR ON A.PRICE_ID =KR.PRICE_IDLEFT JOIN SUSLIKS_TEST.V_GOODS_PRICE_VIEW_MR MR ON A.PRICE_ID =MR.PRICE_IDLEFT JOIN SUSLIKS_TEST.V_GOODS_PRICE_VIEW_G G ON D.DICTIONARY_ID =G.DICTIONARY_ID,

PRICE_DETAIL B,

BASE_SUPPLIER E,

GOODS_INFO H,

GOODS_BRAND IWHERE A.PRICE_ID =B.PRICE_IDAND B.GOODS_ID =H.GOODS_IDAND H.SUPPLIER_ID =E.SUPPLIER_IDAND H.BRAND_ID =I.BRAND_IDAND A.Audit_Status = '1';

12,

oracle,mysql

<>:不等于

13,oracle 中decode啥意思

decode(字段或字段的运算,值1,值2,值3) 这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3

对应

mysql

case when then

或者IIf(Logical Expression, Numeric Expression1, Numeric Expression2)

14,mysql错误提示Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE)的一个解决办法

15,oracle 中:WMSYS.WM_CONCAT

mysql中:GROUP_CONCAT

16,Mysql代替oracle中rownum作用的语句

Select group_id,(@rowNum:=@rowNum+1) as rowNum

From v_base_department, (Select (@rowNum :=0) ) b

17,mysql返回本月第一天

selectDATE_ADD(curdate(),interval-day(curdate())+1 day);

oracle返回本月第一天

trunc(sysdate - 1,'MM')

18,mysql中加减(1,2,3...)年,(1,2,3...)月,(1,2,3...)日

DATE_ADD(OrderDate,INTERVAL 2 DAY)http://www.w3school.com.cn/sql/func_date_add.asp

oracle中

add_month(sysdate,-1)

19,Oracle:grouping :空的地方返回1,非空的地方返回0

http://www.360doc.com/content/10/1231/11/2581091_82872238.shtml

19

mysql中

把时间变成 不同格式的

H大写是24小时制度,等

select date_format(now(),'%Y-%m-%d %H:%i:%s')

oracle

select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') from dual;

20,group by

oracle:中cube的作用

一组是先按照a分组,在a组里面,然后按照b分组(group by cube(a,b))

还有一组只有单单的a,可以统计a组对应的所以数量

同理,还有单单的一组b,统计b组对应的所以数量

还有一组对应所有的数量

group by cube(a,b,c)

mysql:中没有cube,单只有group by

group by a,b

意思就是,先按照a分组,在a组里面,再按照b分组

21,substring(? from 1 for length(phonenum)

? 在这里应该是一个输入型变量。 substring表示从该变量的第一个字符起,取到phonenum的长度。如,该变量值为:‘Hello World',phonenum的长度为4 则,substring的结果为:'Hell'

22.oracle:

sysdate+1就是加一天

如果要加一小时的话就是sysdate+1/24

如果要加一分钟的话就是sysdate+1/24/60

依此类推

mysql:

DATE_SUB(NOW(), INTERVAL 1 MINUTE)当前时间减1分钟

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值