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 学习碎片的更多相关文章

  1. 我的MYSQL学习心得(十六) 优化

    我的MYSQL学习心得(十六) 优化 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  2. mysql学习【第6篇】:权限和数据库设计

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! mysql学习[第6篇]:权限和数据库设计 用户和权限管理 /* 用户和权限管理 */ ---- ...

  3. 一千行MySQL学习笔记 (转)

    出处:  一千行MySQL学习笔记 /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权 ...

  4. mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记

    mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...

  5. MySQL学习总结:提问式回顾 undo log 相关知识

    原文链接:MySQL学习总结:提问式回顾 undo log 相关知识 1.redo 日志支持恢复重做,那么如果是回滚事务中的操作呢,也会有什么日志支持么? 也回滚已有操作,那么就是想撤销,对应的有撤销 ...

  6. MySQL学习(4)---MySQL索引

    ps:没有特殊说明,此随笔中默认采用innoDB存储引擎中的索引,且索引都是指B+树(多路平衡搜索树)结构组织的索引.其中聚集索引.复合索引.前缀索引.唯一索引默认都是使用B+树,统称为索引. 索引概 ...

  7. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  8. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  9. 我的MYSQL学习心得(三) 查看字段长度

    我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

随机推荐

  1. [WinAPI] API 14 [获取、设置文件属性和时间]

    >_< 为了获取文件属性,用户可以使用GetFileAttributes与GetFileAttributesEx函数. GetFileAttributesEx函数除了返回文件属性外,还返回 ...

  2. ruby正则匹配回车换行符

    如果你使用/^.*$/这种正则是匹配不到回车换行符的. 所以应该像下面这么写: /^[\s\S]*$/

  3. animate.css

    这是个css3动画框架,现在很流行,在小动画效果有很多,使用的方式 <div class="animated bounce"></div> /*只要修改bo ...

  4. php-fpm的配置和优化

    php-fpm的安装目录 下面是我的平时的环境搭建php的各种安装目录,大家的基本也差不多. centos等linux平台 /usr/local/php/php /usr/local/php/etc/ ...

  5. 17数据表&E-R模型&概念数据模型上-选学天轰穿大话数据库视频教程

    大纲:解剖“数据表”,戏说E-R模型,概念数据模型(E-R 到 CDM),使用PowerDesigner创建概念模型,生成逻辑数据模型 土豆超清地址: 腾讯超清地址: 百度云盘下载地址:上传ing,稍 ...

  6. Correct use of System.Web.HttpResponse.Redirect

    from:https://blogs.msdn.microsoft.com/tmarq/2009/06/25/correct-use-of-system-web-httpresponse-redire ...

  7. AngularJS和DataModel

    通常,在AngularJS中使用JSON作为存储数据的模型.我们可能这样在controller中写model: app.controller('BookController',['$scope',fu ...

  8. linux shell 多线程执行程序

    Shell中并没有真正意义的多线程,要实现多线程可以启动多个后端进程,最大程度利用cpu性能. 直接看代码示例吧. (1) 顺序执行的代码 #!/bin/bash date ` do { echo & ...

  9. EWM 强大的数据修复功能

    在上了EWM系统后,运行一段时间可能因为不正确的操作,系统意外情况数据不一致的问题,交货单行项目状态不致,等等报不一致的情况,EWM的自检功能比较强. 下面介绍一种数据不致的修复工具之一,tx: /S ...

  10. RPC和NFS

    参考:http://eduunix.ccut.edu.cn/index2/html/linux/OReilly.SUSE.Linux.Jul.2006/059610183X/suselinux-CHP ...