mysql 学习碎片
1、mysql 中执行 sql字符串
set @strSql='select 1200 as item';
prepare select_sql from @strSql;
execute select_sql;
#输出
+------+
| item |
+------+
| 1200 |
+------+
2、字符类型字段转换成整型
select cast( '' as signed) as id;
+-----+
| id |
+-----+
| 123 |
+-----+
3、将查询结果批量写入表中
INSERT INTO tb_1(id,title) select id,title from tb_2;
4、判断存储过程是否存在,存在则删除
drop procedure if exists b2b_bidding.temp_proc_update_zb_table_uid;
5、简单存储过程定义
CREATE PROCEDURE proc_modify_tb1_id()
BEGIN
#定义变量
DECLARE _max_uid INTEGER;
DECLARE _table_name VARCHAR(1000); # 招标附属表 b2b_bidding.bid_announcements_expand
set _max_uid=( select MAX(CAST(str_id AS signed))+1 FROM tb_1) ;
set _table_name='tb_1'; IF EXISTS(select * FROM tb_id_generation where table_name=_table_name) THEN
UPDATE tb_id_generation set table_id= _max_uid where table_name=_table_name;
ELSE
INSERT into tb_id_generation (table_name,table_id ) VALUES (_table_name,_max_uid);
END IF ; END; #执行存储过程
CALL proc_modify_tb1_id();
6、常用INSERT/UPDATA语句
6.1》 通过 IGNORE 实现插入数据主键冲突,SQL执行不成功但不抛出异常。
INSERT IGNORE INTO mytab(ID,Title,`WHERE`) VALUES (1,'aaaa','aaaaaa');
6.2》主键冲突,则通过 on DUPLICATE KEY 执行UPDATE
INSERT IGNORE INTO mytab(id,title,`short_title`) VALUES (1,'XX有限公司','XX公司')
on DUPLICATE KEY UPDATE title='update-XX有限公司',`short_title` ='update——XX公司';
6.3 》存在满足条件记录,则添加记录进入表中
INSERT INTO mytab(ID,Title,`WHERE`)
SELECT 3,'','' from mytab
where EXISTS (select 1 from mytab where 1<>1);
6.4》存在主键相同的记录着直接替换已经存在的记录 字段值
REPLACE INTO mytab SELECT 1, 't1','tttttt2' FROM mytab;
7、find_in_set函数,匹配字段属性值
mysql> SELECT * from test.my_tb WHERE find_in_set(parent_code,'01,02');
+----+-------------+------+
| id | parent_code | code |
+----+-------------+------+
| 1 | 01 | 001 |
| 2 | 01 | 001 |
| 3 | 02 | 001 |
| 4 | 01 | 003 |
| 5 | 02 | 002 |
+----+-------------+------+
8、根据 汉字对应的首字母排序
ORDER BY CONVERT(chinese_file USING gbk )
mysql 学习碎片的更多相关文章
- 我的MYSQL学习心得(十六) 优化
我的MYSQL学习心得(十六) 优化 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- mysql学习【第6篇】:权限和数据库设计
狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! mysql学习[第6篇]:权限和数据库设计 用户和权限管理 /* 用户和权限管理 */ ---- ...
- 一千行MySQL学习笔记 (转)
出处: 一千行MySQL学习笔记 /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权 ...
- mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记
mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...
- MySQL学习总结:提问式回顾 undo log 相关知识
原文链接:MySQL学习总结:提问式回顾 undo log 相关知识 1.redo 日志支持恢复重做,那么如果是回滚事务中的操作呢,也会有什么日志支持么? 也回滚已有操作,那么就是想撤销,对应的有撤销 ...
- MySQL学习(4)---MySQL索引
ps:没有特殊说明,此随笔中默认采用innoDB存储引擎中的索引,且索引都是指B+树(多路平衡搜索树)结构组织的索引.其中聚集索引.复合索引.前缀索引.唯一索引默认都是使用B+树,统称为索引. 索引概 ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(二) 数据类型宽度
我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- 我的MYSQL学习心得(三) 查看字段长度
我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
随机推荐
- [WinAPI] 串口读写
#include <stdio.h> #include <stdlib.h> #include <windows.h> HANDLE hComm; OVERLAPP ...
- C# 两行代码实现 延迟加载的单例模式(线程安全)
关键代码第4,5行. 很简单的原理不解释:readonly + Lazy(.Net 4.0 + 的新特性) public class LazySingleton { //Lazy singleton ...
- Cacti学习笔记一:基本安装和配置
1.安装依赖包 yum -y install net-snmp-devel mysql mysql-devel openssl-devel libtool 2.安装RRDTool yum -y ins ...
- atitit.条形码的原理与生成总结java Barcode4j barcode o5
atitit.条形码的原理与生成总结java Barcode4j barcode o5 条形码类库使用报告Barcode4j, ZXing 1 使用成果图片 1 条形码标准code 128和code ...
- 在 C++Builder 工程里调用 DLL 函数
调用 Visual C++ DLL 给 C++Builder 程序员提出了一些独特的挑战.在我们试图解决 Visual C++ 生成的 DLL 之前,回顾一下如何调用一个 C++Builder 创建的 ...
- 5分钟破解wpa2密码(转)
首先大家要明白一种数学运算,它叫做哈希算法(hash),这是一种不可逆运算,你不能通过运算结果来求解出原来的未知数是多少,有时我们还需要不同的未知数通过该算法计算后得到的结果不能相同,即你不太可能找到 ...
- Spring框架下的 “接口调用、MVC请求” 调用参数、返回值、耗时信息输出
主要拦截前端或后天的请求,打印请求方法参数.返回值.耗时.异常的日志.方便开发调试,能很快定位到问题出现在哪个方法中. 前端请求拦截,mvc的拦截器 import java.util.Date; im ...
- Java web实时进度条整个系统共用(如java上传进度条、导入excel进度条等)
先上图: 这上文件上传的: 这是数据实时处理的: 1:先说说什么是进度条:进度条即计算机在处理任务时,实时的,以图片形式显示处理任务的速度,完成度,剩余未完成任务量的大小,和可能需要处理时间,显示方式 ...
- 支付宝Wap支付你了解多少?
上几篇文章详细介绍了支付宝APP支付.微信APP支付 此文章来介绍下支付宝Wap支付(也叫作手机网站支付) 目录 1.创建应用并获取APPID 2.配置应用环境 3.配置沙箱环境 4.服务端实现(Ma ...
- 基于Qt的遥感图像处理软件设计总结
开发工具 VS2008+Qt4.8.0+GDAL1.9 要点 接口要独立,软件平台与算法模块独立,平台中各接口设计灵活,修改时容易. 设计软件时一步步来,每个功能逐一实现,某个功能当比较独立时可以 ...