MySQL
奋斗鱼
一个人如果没有梦想,那跟咸鱼有什么区别
展开
-
mysql:日期与字符串转换
时间转字符串SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');返回结果 2020-08-14 14:51:33日期格式如下:%M 月名字(January……December)%W 星期名字(Sunday……Saturday)%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)%Y 年, 数字, 4 位%y 年, 数字, 2 位%a 缩写的星期名字(Sun……Sat)%d 月份中的天数, 数字(0...原创 2021-11-25 22:41:19 · 482 阅读 · 0 评论 -
mysql:关联查询并集、差集、交集
联合查询的规则是:字段的个数和顺序必须相同查询中的相应字段必须具有兼容的数据类型要对合并后的结果集进行排序,可以在最后一个查询后面加上 order by 只在最后一个查询后面加,不是每个查询都加。表exam_score 字段:id,stu_name,subject表exam_score 字段:id,stu_name,subject1.并集union会移除所有重复的行,要保留重复的行,需要使用 union all。-- 有语文成绩或数学成绩的学生select stu_name原创 2021-11-16 10:16:39 · 3969 阅读 · 0 评论 -
pgsql:count统计记录时去重
在count统计记录数时,如果想去重复字段的记录,可以用count(DISTINCT 字段名) 来过滤。示例如下:SELECT area_name,count(DISTINCT cdate_tno)cnt FROM t_month_cdate tcWHERE year_month='2021-08'GROUP BY area_name原创 2021-09-17 16:53:31 · 5278 阅读 · 0 评论 -
Mysql:简单存储过程
mysql存储过程示例CREATE DEFINER=`root`@`localhost` PROCEDURE `p_blog`( in _organization_id int, -- 定义入参 in _page_index int, in _page_size int)BEGIN declare _organization_type int default 0; -- 定义变量 declare _children varchar(500); sta...原创 2021-06-15 22:59:45 · 225 阅读 · 0 评论 -
Mybatis:in在where查询条件中的写法(mysql和pgsql)
在mybatis使用过程中,有时需要传递一个包含多个值的参数,用in来查询这些值范围内的数据,如fid是一个Int类型字段,现在需要查询1,2,3这三个fid的记录,直接将 1,2,3作为一个入参传递进来时,需要做些修改才能正确实现In的条件查询。1.Mysql中的写法in在where查询条件中可以使用locate函数进行查找,locate(查找字符串,源字符串) 返回值为true或false。select fid,fname from tb_demoWHERE LOCATE(CO...原创 2021-01-27 09:56:41 · 5445 阅读 · 0 评论 -
mysql 报错: 1449 The user specified as a definer (‘root‘@‘%‘) does not exist问题解决
问题在用Navicat Premium导入mysql视图时出现提示:1449The user specified as a definer ('root'@'%') does not exist,或者Navicat Premium连接远程数据库时出现is not allowed to connect to this MySQL server的提示,都是同一问题引起。解决方法一1.登录mysql,执行命令,将权限赋给rootgrant all privileges on *.* to原创 2020-11-10 16:00:14 · 3254 阅读 · 0 评论 -
MySQL:查看数据库备份文件位置、查询文件保存位置
查看MySQL数据库备份文件位置、查询文件保存位置右击连接,选择“连接属性”,可以看到“设置位置”显示了该连接数据库下的所有备份文件和保存的查询文件。或者可以右击连接,直接选择“打开设置位置”,也可以直接打开设置位置目录。...原创 2020-10-10 09:46:31 · 5417 阅读 · 0 评论 -
MySQL:存储过程的创建
1.mysql存储过程无法使用Alter procedure来修改存储过程,必须删除后重新创建,所以在需要更新存储过程时要在前一行使用drop procedue 删除。2.存储过程内使用分号;会引起sql语句提前结束执行,引起创建过程失败,需要用delimiter // 命令将默认的分号;改为//来代替本段命令的结束提交。/* 获取IO设备数据*/delimiter //DROP PROCEDURE p_get_LastOne_hostdevice;CREATE PROCEDURE p_原创 2020-09-15 13:34:23 · 247 阅读 · 0 评论 -
MySQL:使用Navicat Premium自动备份
1.设置备份文件路径右击数据库根节点选择“连接属性”->"高级" 设置文件位置(会提示需要关闭连接)。这里的文件位置是你要备份的目录,各数据库会在此目录下自动创建各自文件夹。2.批处理作业点击“计划”->新建批处理作业,选中需要备份的数据库,点击保存,输入作业名称。3.设置计划任务保存完,点击设置任务,在弹出的窗口“计划”页面中,点击新建,并设置好启动备份的时间。点击应用(会提示输入操作系统的账号密码)。保存完成后退出。自动备份的设置就完成了。4.测试验证原创 2020-08-27 21:45:24 · 2049 阅读 · 0 评论 -
MySQL:怎样临时执行多条SQL语句(包含declare 定义变量等复杂业务)
1.未使用Declare定义变量的情况Mysql 执行多条语句时,每条语句可以用分号间隔,语句是可以按顺序执行下来的。比如增删改查每句用分号间隔即可SELECT '0001';SELECT '0002'; -- 或其他insert updat delete语句2.使用Declare定义变量的情况因为Declare语法必须出现在Begin ... end代码块执行,所以经常都会在存储过程中看到。如果想在多语句代码块中使用Declare定义变量,只能创建存储过程,并在末尾语句删除此存原创 2020-08-13 19:54:29 · 2535 阅读 · 0 评论 -
Mysql:获取指定数据表中的字段名称或注释
获取指定数据表中的字段名称或注释Select COLUMN_NAME 列名, DATA_TYPE 字段类型, COLUMN_COMMENT 字段注释 from INFORMATION_SCHEMA.COLUMNS Where table_name = 't_data_hostdevice' ##表名 AND table_schema = 'db_frems'##数据库名 AND column_name LIKE 'DI1' ##字段名 ...原创 2020-07-13 15:43:07 · 795 阅读 · 0 评论 -
MySQL:使用NavicatIP远程连接失败,提示“is not allowed to connect to this MySql server”
问题:使用Navicat Premium用IP远程连接MySQL时失败,提示“is not allowed to connect to this MySql server”,但在本地用localhost代替IP访问却正常。解决方案:修改mysql库中的user表,将用户root对应的Host值由localhost改为%,并且重启mysql服务生效。方法1(最简单):使用Navicat Premium本地登录修改。在本地用localhost可以成功登录,打开mysql库下的use.原创 2020-05-25 11:16:55 · 3501 阅读 · 0 评论 -
Mysql:Linux 中登录mysql客户端命令行以及常用命令
1.安装mysql客户端yum install mysql -y2.查看mysql版本方法1.在终端输入 mysql -V,即可显示版本方法2.登录mysql后,输入命令select version();3.登录mysql在终端输入命令,mysql -h192.168.43.119 -uroot -p1234-h表示mysql服务端的IP,-u表示用户名 -p表示密码4.查看数据库show databases;5.使用数据库testuser test;原创 2020-05-16 01:14:26 · 13820 阅读 · 0 评论 -
MySQL:navicat 连接 mysql 时报错:1251-Client does not support authentication protocol requested by server
问题navicat 连接 mysql 时报错:1251-Client does not support authentication protocol requested by server原因因为mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password此时用MySQL 8.0 Command Line Client 打开命令行,可以查询到加密规则解决1.修改密码和加密规则AL原创 2020-05-12 18:08:58 · 236 阅读 · 0 评论 -
MySQL:2013 - Lost connection to MySQL server at waiting for initial communication
需要在my.ini文件添加一行代码,配置禁止域名解析1.my.inf位置默认路径在C:\ProgramData\MySQL\MySQL Server 8.0如果没找到ProgramData,需设置显示隐藏文件夹才能看到。2.在my.ini文件中查找[mysqld],然后添加skip_name_resolve...原创 2020-05-12 17:59:52 · 1392 阅读 · 1 评论 -
MYSQL:提示table xxx donot exit,Windws系统表名大写问题
问题:在windows中,打开Navicat Premium,连接Mysql,打开某个大写表名的数据表时,提示“table xxx donot exit”。原因:mysql服务是安装在Linux系统上,为了忽略大小写,将mysql的配置文件/etc/my.cnf的忽略大小写设置打开了,[mysqld]lower_case_table_names=1,而在windows中打...原创 2020-03-17 16:03:24 · 664 阅读 · 0 评论 -
SQL:查询结果新增自增自动字段
--查询自增变量SET @n:=0;SELECT (@n:=@n+1)tm,tg.* FROM t_gsuserbanding AS tgORDER BY tg.Code DESC;--更新自增变量SET @n:=0;UPDATE t_gsuserbandingset CODE=(@n:=@n+1)原创 2019-12-23 14:54:50 · 1666 阅读 · 0 评论 -
Mybatis:MySQL的limit分页函数使用参数动态查询
MySQL的分页函数limit m,n,其中m 和n 都必须是常量,不能参数。 <select id="getList" resultMap="Member" parameterType="java.util.HashMap"> SELECT * FROM t_member AS tm WHERE 1=1 <if test="NickName !=null">...原创 2019-09-24 17:14:35 · 4712 阅读 · 0 评论 -
MYSQL:查询分页
1.limit m,n表示跳过m条,获取n条数据语句示例:select * from table limit 10,10如:参数curPage=1 ,pageSize=10分页语句为:select * from table limit (curPage-1)*pageSize,pageSize...原创 2019-09-24 14:35:52 · 232 阅读 · 0 评论 -
MySQL:DDL语句基本操作语句
1、设置时间字段默认设置字段类型为TIMESTAMP,并默认值设为 CURRENT_TIMESTAMP原创 2019-09-17 19:07:07 · 195 阅读 · 0 评论 -
MySQL 学习笔记1:基本增删改查
1.Limit 获取前几条数据,类似SQLserver的top功能,但位置放末尾SELECT * FROM metersdata tORDER BY t.addtime DESC LIMIT 102.原创 2019-09-09 14:18:13 · 186 阅读 · 0 评论