首页 / 面试 / 决胜九月:mysql面试必会基础(三)
决胜九月:mysql面试必会基础(三)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了决胜九月:mysql面试必会基础(三),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含6508字,纯文字阅读大概需要10分钟。
内容图文
必会的几个函数avg sum count max min必会的GROUP BY 、HAVING。
举个2016腾讯笔试题的真实的例子,(lz面试2015腾讯实习生时遇到同样的问题)
有汽车评分表car_score,表中有用户id,汽车名称carname,评分score三个字段,存储着用户对汽车的评分。
默认只有用户对汽车进行两次及以上评分时才有效,求汽车的有效的平均评分并由高到低排序。
表结构如下:
楼主给出的答案和执行结果:
Join也是必会的知识点:join、left join、right join、inner join、outer join
无论是哪一种join无非都是选择一个条件将表的列连接,返回对应的数据,上一篇的图解应该很形象。
For Example:题目如:https://leetcode.com/problems/combine-two-tables/ 题外话:(LeetCode 上的题很好但自认为如果时间不够不用全刷,java开发面试算法应该不会难过树,数据库操作那10几道题也应该够用了)
lz给出的答案: # Write your MySQL query statement below
select t1.FirstName as FirstName ,
t1.LastName as LastName,t2.City as City,
t2.State as State
from Person as t1
left join Address as t2
on t1.PersonId = t2.PersonId
子查询
子查询的效率比较低,但是有时可能会解决一些问题
还是从实际例子出发:LZ给别人开发一个了一个关于“银行贷款申请”的微信公共账号,其中有个需求就是要给申请贷款的用户分配客户经理。
分配策略就是,分配给任务最少的客户经理。相关的表有贷款申请表forms,用户表users。贷款申请表中存储所有的贷款申请信息,主要包括id(主键),uid(申请用户名),workerid(客户经理id),workername(客户经理名)(这里由于客户经理的变化比较少,所以做了一下冗余)。用户表包括,用户id 用户名username 用户类别state 用户组id。
要找到所有用户经理的接单数量,就不能单从贷款申请表查询,因为有的客户经理可能没有接单也就存在在这个表中。
lz想到的方法就是从用户表入手,返回对应用户组中所有用户(客户经理)的接单数量,方法如下。(个人觉得可以不用子查询实现,但目前还没想到,这里留个坑,等我学会了回来填上)
组合查询Union
这个没什么太多说的,就是要注意:每个查询必须包含相同的列,表达式或聚集函数且列的类型必须兼容
---------分割线---------
插入、删除、更新
INSERT是用来插入(或添加)行到数据库表的。插入数据的几种方式:
1
2
3
4
INSERT
INSERT
SELECT
列省略
1
2
提高整体性能
更新和删除数据
1
2
更新行和删除行的时候一定要加上WHERE子句,否则后果自负
UPDATE
UPDATE
删除数据
为了从表中删除(去掉)数据,使用DELETE语句,可以使用两种方式:
2
更新和删除的指导原则
下面是许多sql程序员使用的UPDATE或DELETE是所遵循的习惯
创建和改变表
创建表
一般两种创建表的方法
1
2
在使用交互式工具时,工具也是生成MySQL语句操纵数据库
表创建基础
为了利用CREATE
1
2
CREATE
(
column_id
columnOne
columnOne
column
.....
PRIMARY
)
使用NULL值
主键再介绍
索引创建
使用AUTO_INCREMENT
如果两个表关联,添加时一表时需要另一表的主键,该怎么获得呢:
指定默认值
MySQL不允许使用函数作为默认值,它只支持常量
引擎搜索
以下几个需要知道的引擎
1
更新表
内容总结
以上是互联网集市为您收集整理的决胜九月:mysql面试必会基础(三)全部内容,希望文章能够帮你解决决胜九月:mysql面试必会基础(三)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。