mysql
阴天了
哈哈哈哈哈
展开
-
通俗易懂的学会:SQL窗口函数
原文地址转载 2021-06-17 17:20:00 · 219 阅读 · 0 评论 -
left join一对多只保留一条结果的解决方法
select * from(select user_id from tabel_1)aleft join(select user_id from tabel_2 group by user_id) bon a.user_id = b.user_id原创 2020-11-30 10:18:20 · 17200 阅读 · 0 评论 -
mysql数据库escape应用
mysql中常用的通配符包括“%和_”,假如在模糊匹配时,遇到匹配字符“”,正确的做法是需要进行转义字符。比如:查找名字中第二个字符为“”的名字(比如叫K_henry),在利用like进行模糊匹配时正确的做法应该是SELECT name FROM 表名 WHERE name LIKE '_$_%' ESCAPE '$' 或者直接用反斜杠SELECT name FROM 表名 WHER...原创 2020-02-13 01:04:39 · 862 阅读 · 0 评论 -
mysql数据库利用concat将字段拼接
SELECT CONCAT('字段1','字段2',...) AS 新的字段 FROM 表名原创 2020-02-13 00:23:30 · 582 阅读 · 0 评论 -
mysql数据库去除查询功能
SELECT DISTINCT 列名 FROM 表名原创 2020-02-13 00:11:52 · 456 阅读 · 0 评论 -
案例:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State
创建两张表,表1为Penson,表2为Address,如下图所示要求:编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State问题分析 使用连接查询,分为内连接和外连接 内连接(inner join)会舍弃两表中不相同的部分 外连接(left...原创 2019-03-02 18:32:32 · 2833 阅读 · 0 评论 -
案例:删除Id最小的重复邮件
要求编写一个 SQL 查询,来删除 email 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小的那个。SQL语句为DELETE p1 FROM email p1, email p2 WHERE p1.Email = p2.Email AND p1.Id > p2.Id;结果显示为...原创 2019-03-02 18:30:45 · 435 阅读 · 0 评论 -
MySQL之SELECT,WHERE,GROUP BY及聚合函数详解
第一部分讲述了关于MySQL以及HeidiSQL软件的安装,不熟悉的朋友可以参考一些 ,—>>传送门,那么本部分开始SQL语句的学习。为了方便讲解,本部分利用MySQL的实例数据库,下载地址,下载完以后解压在你熟悉的文件夹即可。1. 导入数据库 如果你喜欢在终端进行SQL操作,那么只需要打开MySQL终端,就着这样的样子接下来我演示一下怎么将数据库导入我们的MySQL...原创 2019-02-27 16:55:21 · 5956 阅读 · 0 评论 -
windows下MySQL安装教程
作为一名mysql小白,通过阅读各种关于mysql的博客,对mysql也有了一些了解,写下此博客来记录自己的学习效果,希望对一些初学者有一些帮助,文中不成熟的内容希望路过的大神留下宝贵的意见,定虚心接纳,先在此谢过。数据库要了解mysql,首先要明白的一个概念当然是要知道什么是数据库了。顾名思义,数据库就是数据的仓库,用来存储并处理数据的。而mysql呢是一个通过SQL语言来对数据库中的数...原创 2019-02-26 11:28:56 · 1210 阅读 · 0 评论 -
MySQL之表、列别名及各种JOIN连接详解
MySQL在SQL中,合理的别名可以让SQL更容易以及可读性更高。别名使用as来表示,可以分为表别名和列别名,别名应该是先定义后使用才对,所以首先要了解sql的执行顺序(1) from(2) on(3) join(4) where(5) group by(开始可以使用select的别名,后面的也行)(6) avg,sum…(7) having(8) select(9) di...原创 2019-03-02 18:33:17 · 5592 阅读 · 0 评论 -
案例:提取重复的电子邮件
创建一个数据表,然后进行一些操作SQL语句如下:CREATE TABLE IF NOT EXISTS `email` ( id INT(11) AUTO_INCREMENT, e_mail VARCHAR(45) DEFAULT NULL, PRIMARY KEY (id))ENGINE=InnoDB;USE yiibaidb;INSERT INTO email(e_mail)VA...原创 2019-03-02 18:35:40 · 554 阅读 · 0 评论 -
案例:MySQL判断大国信息
依然先建立一个数据表,在进行相关操作。CREATE TABLE IF NOT EXISTS bigguo( name VARCHAR(45) DEFAULT NULL, continent VARCHAR(45) DEFAULT NULL, a_rea INT(10) DEFAULT NULL, population INT(10) DEFAULT NULL, gdp INT...原创 2019-03-02 18:36:55 · 250 阅读 · 0 评论 -
MySQL之各部门前3高工资的员工
创建如下图所示的employee表格在创建Department表格问题是找出每个部门工资前三高的员工。问题思路:大致就是通过两个employee的表,进行对比,约束条件是 departmentid 相等并且salary 最大的。而小于三则是对数量的约束完整的SQL语句为CREATE TABLE IF NOT EXISTS Employee( Id INT PRIMARY KE...原创 2019-03-04 10:36:30 · 1139 阅读 · 3 评论 -
MySQL之行程与用户
问题重述Trips 表中存所有出租车的行程信息。每段行程有唯一键 Id,Client_Id 和 Driver_Id 是 Users 表中 Users_Id 的外键。Status 是枚举类型,枚举成员为 (‘completed’, ‘cancelled_by_driver’, ‘cancelled_by_client’)。首先我们先创建Trips表,如下所示Users 表存所有用户。每个用户...原创 2019-03-04 10:12:15 · 306 阅读 · 0 评论 -
MySQL实现将Excel数据导入
在进行项目之前,先看看HeidiSQL如何将数据表格导入进软件中,如果各位安装了HeidiSQL,那么接下来就在HeidiSQL下操作,没有安装的话请参考我的博客进行安装。为了方便,我们在创建列表的时候,先创建一个数据库,来专门存放我们此次的数据。我这了把名字命名为project,在project数据库里面创建一个employees的表用于存放我们的数据,然后将你的excel表转换成CSV格式。...原创 2019-03-03 16:57:05 · 1285 阅读 · 0 评论 -
MySQL之分数排名的两种方式及解法
问题重述编写一个 SQL 查询来实现分数排名。如果两个分数相同,则两个分数排名(Rank)相同。请注意,平分后的下一个名次应该是下一个连续的整数值。换句话说,名次之间不应该有“间隔”。先创建数据表问题思路:1、可以采取表连接的方法,左表与右表比较,若左表数据小于右表数据,对右表计数2、再按照Id分组3、倒序排列语句如下:#思路:链表;左表的分数小于右表的时候,对右表计数,按照ID...原创 2019-03-03 16:55:59 · 5452 阅读 · 4 评论 -
MySQL之换座位问题
问题叙述小美是一所中学的信息科技老师,她有一张 seat 座位表,平时用来储存学生名字和与他们相对应的座位 id。其中纵列的 id 是连续递增的,小美想改变相邻俩学生的座位。你能不能帮她写一个 SQL query 来输出小美想要的结果呢?首先先创建seat座位表问题思路:1、假如学生的人数是奇数,排除掉最后一位的学生2、判断剩余学生3、对于id是奇数的学生让其id加1,对于偶数的学...原创 2019-03-03 15:39:46 · 965 阅读 · 0 评论 -
MySQL之选择各部门工资最高的员工
首先看问题:创建Employee 表,包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。那么我们先建立Employee表,SQL语句为结果为再创建Department 表,包含公司所有部门的信息。SQL语句为结果为问题要求:编写一个 SQL 查询,找出每个部门工资最高的员工。例如,根据上述给定的表格,Max 在 IT 部门有最高工资,He...原创 2019-03-03 15:08:49 · 3089 阅读 · 5 评论 -
案例:mysql之交换工资
创建一个 salary表,如下所示,有m=男性 和 f=女性的值 。use runoob;create table if not exists salary(id int(11) auto_increment,name varchar(11) not null,sex varchar(11) not null,sala float default null,primary key(id...原创 2019-03-02 18:39:31 · 375 阅读 · 0 评论 -
案例:MySQL列出所有超过或等于5名学生的课
创建一个课程表,包括学生和课程use runoob;create table if not exists student(student varchar(11) not null,class varchar(11) not null)engine=innodb;insert into student(student,class)values('A','Math'), ('B','E...原创 2019-03-02 18:38:46 · 725 阅读 · 0 评论 -
mysql实战之分数排名,高薪部门员工及行程与用户
各部门前3高工资的员工行程与用户分数排名的两种方式原创 2019-03-04 11:02:52 · 207 阅读 · 0 评论