随笔分类 -  MySQL5.7

MySQL数据库语句及维护的总结
摘要:TRUNCATE TABLE t_sdrs_general_user; -- INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;(这里的话字段必须保持一致)INSERT INTO t_sdrs_general_user (CO 阅读全文
posted @ 2020-09-27 16:56 Yuezc 阅读(110) 评论(0) 推荐(0)
摘要:- 问题: 查询当"课程" 等于子查询里面的课程信息 - 出错指令: [Err] 1242 - Subquery returns more than 1 row 开始出错时的SQL -- 省略部分 CASE WHEN kcmc = (SELECT kcmc FROM t_sdrs_xscj WHER 阅读全文
posted @ 2020-08-11 14:37 Yuezc 阅读(11223) 评论(0) 推荐(1)
摘要:使用MySQL游标 首先,必须使用DECLARE语句声明游标: DECLARE cursor_name CURSOR FOR SELECT_statement; 游标声明必须在变量声明之后。如果在变量声明之前声明游标,MySQL将会发出一个错误。游标必须始终与SELECT语句相关联。 接下来,使用O 阅读全文
posted @ 2020-05-25 18:31 Yuezc 阅读(216) 评论(0) 推荐(0)
摘要:1、系统版本信息 2、查看ifconfig 将文件ifcfg-ens33 改为 ifcfg-eth1 # cd /etc/sysconfig/network-scripts # mv ifcfg-ens33 ifcfg-eth1 # vim ifcfg-eth1 # ls -ld /etc/sysc 阅读全文
posted @ 2020-05-22 15:14 Yuezc 阅读(211) 评论(0) 推荐(0)
摘要:MySQL提供循环语句,允许您根据条件重复执行一个SQL代码块。 MySQL中有三个循环语句:WHILE,REPEAT和LOOP。 1、WHILE 循环 DELIMITER $$ DROP PROCEDURE IF EXISTS test_mysql_while_loop$$ CREATE PROC 阅读全文
posted @ 2020-05-22 15:05 Yuezc 阅读(415) 评论(0) 推荐(0)
摘要:MySQL IF语句允许您根据表达式的某个条件或值结果来执行一组SQL语句。 要在MySQL中形成一个表达式,可以结合文字,变量,运算符,甚至函数来组合。表达式可以返回TRUE,FALSE或NULL,这三个值之一。 MySQL IF语句语法: IF expression THEN statement 阅读全文
posted @ 2020-05-21 14:45 Yuezc 阅读(1009) 评论(0) 推荐(0)
摘要:MySQL存储函数只返回一个值。要开发返回多个值的存储过程,需要使用带有INOUT或OUT参数的存储过程。 返回多个值的存储过程示例: SELECT * FROM orders; 原表的数据如上面所示。返回多个值,其实就是多设置几个inout/out的参数。 SQL 如下: USE yiibaidb 阅读全文
posted @ 2020-05-20 15:55 Yuezc 阅读(1975) 评论(0) 推荐(0)
摘要:一、MySQL存储过程参数简介 在现实应用中,开发的存储过程几乎都需要参数。这些参数使存储过程更加灵活和有用。 在MySQL中,参数有三种模式:IN,OUT或INOUT。 IN - 是默认模式。在存储过程中定义IN参数时,调用程序必须将参数传递给存储过程。 另外,IN参数的值被保护。这意味着即使在存 阅读全文
posted @ 2020-05-13 17:14 Yuezc 阅读(435) 评论(0) 推荐(0)
摘要:变量是一个命名数据对象,变量的值可以在存储过程执行期间更改。我们通常使用存储过程中的变量来保存直接/间接结果。 这些变量是存储过程的本地变量。 注意:变量必须先声明后,才能使用它 1、声明变量 要在存储过程中声明一个变量,可以使用DECLARE语句,如下所示: DECLARE variable_na 阅读全文
posted @ 2020-05-12 15:35 Yuezc 阅读(133) 评论(0) 推荐(0)
摘要:1、MySQL存储过程 DELIMITER // CREATE PROCEDURE appProducts() BEGIN SELECT * FROM products; END // DELIMITER; 第一个命令是DELIMITER //,它与存储过程语法无关。 DELIMITER语句将标准分 阅读全文
posted @ 2020-05-11 15:15 Yuezc 阅读(129) 评论(0) 推荐(0)
摘要:我们前面所学习的 MySQL 语句都是针对一个表或几个表的单条 SQL 语句,但是在数据库的实际操作中,并非所有操作都那么简单,经常会有一个完整的操作需要多条 SQL 语句处理多个表才能完成。例如,为了确认学生能否毕业,需要同时查询学生档案表、成绩表和综合表,此时就需要使用多条 SQL 语句来针对几 阅读全文
posted @ 2020-05-11 14:01 Yuezc 阅读(159) 评论(0) 推荐(0)
摘要:1、-- 删除重复行,且保留最高的id: 因为删除的是a表的中的id小于b表中的。 DELETE a FROM contacts a INNER JOIN contacts b WHERE a.id < b.id AND a.email = b.email; 2、-- 删除重复行,且保留最小的id: 阅读全文
posted @ 2020-05-09 15:46 Yuezc 阅读(690) 评论(0) 推荐(0)
摘要:1、一个表中单个列重复的值 SELECT id, firstName, lastName, email, COUNT(*) FROM contacts GROUP BY firstName HAVING COUNT(firstName) > 1; 结果是:其中count(*)是表示重复的次数。 2、 阅读全文
posted @ 2020-05-08 17:39 Yuezc 阅读(370) 评论(0) 推荐(0)
摘要:在数据迁移中,我们经常需要比较两个表,以便在一个表中标识另一个表中没有相应记录的记录。 例如,我们有一个新的数据库,其架构与旧数据库不同。我们的任务是将所有数据从旧数据库迁移到新数据库,并验证数据是否正确迁移。 要检查数据,我们必须比较两个表,一个在新数据库中,一个在旧数据库中,并标识不匹配的记录。 阅读全文
posted @ 2020-04-30 17:01 Yuezc 阅读(24424) 评论(0) 推荐(0)
摘要:1、递归CTE由三个主要部分组成: 形成CTE结构的基本结果集的初始查询(initial_query),初始查询部分被称为锚成员。 递归查询部分是引用CTE名称的查询,因此称为递归成员。递归成员由一个UNION ALL或UNION DISTINCT运算符与锚成员相连。 终止条件是当递归成员没有返回任 阅读全文
posted @ 2020-04-29 18:39 Yuezc 阅读(654) 评论(0) 推荐(0)
摘要:@yuezc:在写这篇笔记之前,一直以为数据库就那样,不就一个查询总行数么,难吗?应该很简单。但是在深入了解之后,让我脑门大开。对,就这感觉。 1、获取单个表的MySQL行计数 SELECT COUNT(*) FROM t_sdrs_xsjbxx; 2、获取MySQL两个或多个表的行计数 SELEC 阅读全文
posted @ 2020-04-27 18:22 Yuezc 阅读(4048) 评论(0) 推荐(0)
摘要:公用表表达式CTE就是命名的临时结果集,作用范围是当前语句。 说白了,你可以把它理解成一个可以多次重复使用的子查询,当然跟子查询还是有点区别的,CTE可以引用其他CTE,但子查询不能引用其他子查询。 自MySQL 8.0版以来简要介绍了公共表表达式或叫CTE的功能,因此需要您在计算机上安装MySQL 阅读全文
posted @ 2020-04-22 18:11 Yuezc 阅读(1167) 评论(0) 推荐(0)
摘要:要在MySQL中创建一个新视图,可以使用CREATE VIEW语句。 在MySQL中创建视图的语法如下: CREATE [ALGORITHM = {MERGE | TEMPTABLE | UNDEFINED}] VIEW [database_name].[view_name] AS [SELECT 阅读全文
posted @ 2020-04-08 17:47 Yuezc
摘要:MySQL 5.x 版本之后支持数据库视图。 在MySQL中,视图的几乎特征符合SQL:2003标准。 MySQL以两种方式处理对视图的查询: 第一种方式,MySQL会根据视图定义语句创建一个临时表,并在此临时表上执行传入查询。 第二种方式,MySQL将传入查询与查询定义为一个查询并执行组合查询。 阅读全文
posted @ 2020-04-08 15:16 Yuezc
摘要:1、数据库视图是虚拟表或逻辑表,它被定义为具有连接的SQL SELECT查询语句。 因为数据库视图与数据库表类似,它由行和列组成,因此可以根据数据库表查询数据。 (个人理解:数据视图就是一个单个表或多个表联合查询出来的数据,并且可以随时查看的表) 2、数据库视图是动态的,因为它与物理模式无关。数据库 阅读全文
posted @ 2020-04-08 15:03 Yuezc