php面试专题---17、MySQL的SQL语句编写考点

一、总结

一句话总结:

注意:只写精品

1、MySQL的关联UPDATE语句?

关键UPDATE A,B:UPDATE A,B SET A.c1=B.c1,A.c2=B.c2 WHERE A.id=B.id
关键A INNER JOIN B:UPDATE A INNER JOIN B ON A.id=B.id SET A.c1=B.c1,A.c2=B.c2 WHERE...…

2、有A(id,sex,par,c1,c2),B(id,age,c1,c2)两张表,其中A.id与B.id关联,现在要求写出一条SQL语句,将B中age>50的记录的c1,c2更新到A表中统一记录中的c1,c2字段中?

内连接:update A,B set A.c1=B.c1,A.c2=B.c2 where A.id=B.id and B.age>50;
内连接:update A inner join B on A. id=B.id set A.c1=B.c1,A.C2=B.c2 where B.age>50

3、mysql六种关联查询?

交叉连接(CROSSJOIN),内连接(INNERJOIN),外连接(LEFT JOIN/RIGHT JOIN),联合查询(UNION与UNIONALL),全连接(FULL JOIN)

4、mysql中为什么交叉连接实例及为什么很少用?

1、SELECT*FROM A,B(,C)或者
2、SELECT*FROM A CROSS JOIN B(CROSS JOIN C)
3、结果笛卡尔积:没有任何关联条件,结果是笛卡尔积,结果集会很大,没有意义,很少使用

5、mysql中的内连接实例?

SELECT * FROM A,B WHERE A.id=B.id 或者
SELECT * FROM A INNER JOIN B ON A.id=B.id

多表中同时符合某种条件的数据记录的集合

6、交叉连接SELECT * FROM A,B和内连接 SELECT * FROM A,B WHERE A.id=B.id的区别?

交叉连接的结果是笛卡尔积:内连接的结果相当于筛选了,所以小了很多

7、mysql内连接分为哪三类?

等值连接:ON A.id=B.id
不等值连接:ON A.id>B.id
自连接:SELECT*FROM A T1 INNER JOIN A T2 ON T1.id=T2.pid

8、mysql如何联合查询及注意?

UNION关键字:SELECT*FROM A UNION SELECT*FROM B UNION...…
列数相等:就是把多个结果集集中在一起,UNION前的结果为基准,需要注意的是联合查询的列数要相等,相同的记录行会合并
不合并重复的记录行:如果使用UNION ALL,不会合并重复的记录行

9、mysql如何实现全链接(MySQL不支持全连接)?

可以使用LEFT JOIN 和UNION 和 RIGHT JOIN 联合使用:SELECT*FROM A LEFT JOIN B ON A.id=B.id UNION SELECT*FROM A RIGHT JOIN B ON A.id=B.id

二、内容在总结中

 

php面试专题---17、MySQL的SQL语句编写考点的更多相关文章

  1. PHP面试 MySQL的SQL语句编写

    MySQL的SQL语句编写 面试题一 有A表(id,sex,par,c1,c2),B(id,age,c1,c2)两张表,其中A.id与B.id关联,现在要求写出一条SQL语句,将B中age>50 ...

  2. php面试专题---MySQL常用SQL语句优化

    php面试专题---MySQL常用SQL语句优化 一.总结 一句话总结: 原理,万变不离其宗:其实SQL语句优化的过程中,无非就是对mysql的执行计划理解,以及B+树索引的理解,其实只要我们理解执行 ...

  3. Mysql常用sql语句(17)- left/right join 外连接

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 外连接分为两种:left join.right ...

  4. MySQL 中 SQL语句大全(详细)

    sql语句总结 总结内容 1. 基本概念 2. SQL列的常用类型 3. DDL简单操作 3.1 数据库操作 3.2 表操作 4. DML操作 4.1 修改操作(UPDATE SET) 4.2 插入操 ...

  5. SQL语句编写的练习(MySQL)

    SQL语句编写的练习(MySQL) 一.建表 1.学生表(Student) 学号 | 姓名 | 性别 | 出生年月 | 所在班级 create table Student( sno varchar(2 ...

  6. Mysql 常用 SQL 语句集锦

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  7. Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  8. MySQL数据库sql语句的一些简单优化

    1.查询条件的先后顺序 有多个查询条件时,要把效率高能更精确筛选记录的条件放在后边.因为MySQL解析sql语句是从后往前的(不知是否准确). 例: select a.*,b.* from UsrIn ...

  9. mysql下sql语句 update 字段=字段+字符串

    mysql下sql语句 update 字段=字段+字符串   mysql下sql语句令某字段值等于原值加上一个字符串 update 表明 SET 字段= 'feifei' || 字段; (postgr ...

随机推荐

  1. Mac019--Ubuntu上安装Rancher

    首先安装:VisualBox虚拟机. 下载:ubuntu镜像 (ubuntu基于linux的免费开源桌面PC操作系统) ======================================== ...

  2. oracle--登陆用户机制

    操作系统验证 密码文件验证 数据库验证 1.操作系统验证 sqlplus / as sysdba; 未使用用户和密码登陆 这是操作系统验证,由这个操作系统的组用户创建的,所以这个操作系统可以直接登陆, ...

  3. 前端 CSS 优先级 样式设置important

    !important 的使用. !important方式来强制让样式生效,但并不推荐使用.因为如果过多的使用!important会使样式文件混乱不易维护. 万不得已可以使用!important 现在选 ...

  4. 两台电脑使用ROS通讯

    一.ROS分布式多机通讯简介 ROS是一种分布式软件框架,节点之间通过松耦合的方式组合,在很多应用场景下,节点可以运行在不同的计算平台上,通过Topic,Service通信. 但是各个节点只能共同拥有 ...

  5. 多线程03-Abort

        );             t.Abort();             Console.WriteLine(; i < ; i++)             {            ...

  6. [Git] 004 初识 Git 与 GitHub 之查看历史记录

    在 GitHub 的 UI 界面使用 Git 查看历史纪录 1. 右侧有个 history 2. 点击后跳转页面 3. 点击相应标题(commit 时写的),进入相应版本(历史) 4. 我选择了 I ...

  7. jquery点击切换在点击切换

    <div style=" position: absolute; top: 6rem; right: 4rem;" id="hides" > < ...

  8. 《剑指offer》面试题20 顺时针打印矩阵 Java版

    我的方法:遇到这种题最好在纸上画一画打印路线.我利用了4个标志left.top.right.bottom,表示当前需要打印的左界.上届.右界和下界,换句话说这些界线之外的已经打印了,如此一来判断结束的 ...

  9. Oracle DBA_EXTENTS视图 与 DBA_SEGMENTS视图

    DBA_EXTENTS describes the extents comprising the segments in all tablespaces in the database.   Note ...

  10. js数组中的引用类型

    我们看一下这个例子: let a={tile:'深复制'}; let b=a; a.title='浅复制'; 那么我们会获得两个对象,一个a,一个b,a的title是浅复制,b的title是深复制.但 ...