数据库
我喜欢吃肉
Hello world!
展开
-
MySQL函数实现递归查询子节点
根据父节点查找所有的子节点创建函数getChildrenListSQL语句如下:delimiter //CREATE FUNCTION `getChildrenList`(rootId INT)RETURNS varchar(1000)BEGINDECLARE sTemp VARCHAR(1000);DECLARE sTempChd VARCHAR(1000);原创 2017-06-17 18:22:47 · 628 阅读 · 0 评论 -
MySQL 代替in/not in 的sql语句
1.in和existsin是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询,一直以来认为exists比in效率高的说法是不准确的。如果查询的两个表大小相当,那么用in和exists差别不大;如果两个表中一个较小一个较大,则子查询表大的用exists,子查询表小的用in。一般情况下,主表中的数据要少,从表的数据要多。例:tabl原创 2017-06-17 17:12:01 · 7155 阅读 · 0 评论 -
Mysql存储过程简单学习
一、存储过程存储过程是SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理。存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其它强大的编程功能。存储过程在创建时即在服务器上进行编译,所以执行起来比单个SQL语句快。二、存储过程的优点: 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL原创 2017-05-20 13:47:26 · 340 阅读 · 0 评论 -
MySql中汉字排序
我的MySQL数据库字符集用的UTF-8,此为环境。做项目时需要用到对查出来的数据按首字母排序,事实上也就是对汉字的拼音按照a--z的顺序进行升序降序排列。本以为是简单的order by XXX asc/desc,哪知道最后结果并没有按照想象中的排序。百度才知道,使用utf-8字符集时,汉字排序并不是按照字母顺序的。解决方式有两个:1.修改数据库字符集,把utf-8改为g原创 2017-09-28 14:18:24 · 11043 阅读 · 2 评论