zoukankan      html  css  js  c++  java
  • 数据库 Mysql内容补充二

    多表查询
    mysql支持的是SQL99标准的连接查询,并不支持oracle公司的外连接查询,
    但是支持oracle等值查询,不等值查询,自连接查询,子查询(只要不是外连接(+)都支持)
    oracle也支持SQL99标准的连接查询
    内连接
    --等值查询
    select e.empno,e.ename,e.sal,d.dname 
    from emp e
    inner join dept d
    on e.deptno=d.deptno;
    --简单而言:就是将oracle多表查询语法中的逗号换成inner join,
      where中的查询条件放在on后面,强调on后面不单单可以是连接条件也可以是查询条件
    
    --不等值查询
    select e.empno,e.ename,e.sal,s.grade
    from emp e
    inner join salgrade s
    on e.sal>=s.losal and e.sal<=s.hisal;
    
    左外连接(右外连接--right join)
    select d.deptno,d.dname,count(e.empno)
    from dept d
    left join emp e
    on d.deptno=e.deptno
    group by d.deptno, d.dname
    --左外连接要注意,想全部显示那个表的数据,就把那个表作为基表,
      例如想显示dept表中的40号部门,所以dept就是基表,这个oracle中的(+)相反。
    mysql中的滤空函数
    --ifnull(字段名,想要的值)
    --mysql没有nvl()函数
    mysql中的字符串连接
    --mysql不支持oracle中的"||"连接符号
    --mysql支持oracle中的concat()连接函数
    查看当前数据库的字符集
    --show variables like 'character%';
    mysql编译
    --在linux64位场景下,编译mysql共享库需要更多的共享库文件
    -ldl:linux下的动态库文件
    -lpthread:多线程共享库文件
    -lm:数学函数共享库
    -stdc++:mysql用到了部分c++函数,需要链接c++的共享库
    -lrt:时间共享库函数
    
    linux32位场景下可能没有问题
  • 相关阅读:
    Unity3D 4.0 界面 基础 入门
    try catch finally 用法
    Mysql表引擎Innodb、MyIsam、Memory
    初步的kudu+impala vs dorisdb vs tidb
    mysql创建类似oracle的dblink
    jedis请求keys超时报错
    php 1223
    php 1214
    php 1216
    php 1222
  • 原文地址:https://www.cnblogs.com/zhanggaofeng/p/6286436.html
Copyright © 2011-2022 走看看