MySQL的几个用法
来源:互联网 发布:淘宝评价采集 编辑:程序博客网 时间:2024/05/16 01:17
1. (非)空条件
SELECT * FROM ecity.enn_user WHERE orgeh IS null;SELECT * FROM ecity.enn_user WHERE orgeh IS NOT null;
2. 若不存在则插入,否则更新。查一下两者的不同
REPLACE INTOINSERT INTO .. VALUES() ON DUPLICATE KEY UPDATE column1=valueXX, column2=valueYY;
4. 查询前几条
SELECT * FROM ecity.enn_user WHERE orgeh IS NOT null limit 0,100;
5. 不等于<>或者!=
SELECT COUNT(1) FROM ecity.u_users WHERE systemId <> 1;SELECT COUNT(1) FROM ecity.u_users WHERE systemId != 1;
6. SQL执行慢,分析SQL查询情况, 在sql语句前加DESC,运行结果是sql语句将执行的运行策略
DESC SELECT COUNT(1) FROM ecity.u_users WHERE systemId <> 1 AND username IN (SELECT itcode FROM ecity.enn_user);
7. 添加索引
ALTER TABLE `ecity`.`duty_sign`ADD INDEX `userid_date` (`user_id` ASC, `sign_date` ASC)
ALTER TABLE `ecity`.`duty_sign` DROP INDEX `userid_date`,ADD INDEX `userid_date` (`user_id` ASC, `sign_date` ASC)
9. 模糊查询, LIKE预编译
注意LIKE后的?两边是没有单引号的:
SELECT sign_date,user_id,user_name,project_id,project_name,time,location FROM project_sign WHERE 1=1 AND user_name LIKE ? AND project_name LIKE ? LIMIT 0,0;
setString(1, "%" + userName + "%");setString(2, "%" + projectName + "%");
注意:设值的时候只有百分号,没有单引号。
下面的SQL(问号两边有单引号)是不行的:
SELECT sign_date,user_id,user_name,project_id,project_name,time,location FROM project_sign WHERE 1=1 AND user_name LIKE '?' AND project_name LIKE '?' LIMIT 0,0;
下面的设值方式(百分号旁有单引号)也是不行的:
setString(1, "'%" + userName + "%'");setString(2, "'%" + projectName + "%'");
10. 查看数据库连接数
show status like '%connection%';
show variables like '%max_connections%';
11. 删除列,删除索引
ALTER TABLE `ecity`.`enn_organisation` DROP COLUMN `up_orgeh_hash`,DROP INDEX `up_orgeh_hash_index` ;
12. 创建表时指定自增字段
CREATE TABLE `work_time_period` ( `name` varchar(50) default NULL, `start_date` date default NULL, `end_date` date default NULL, `on_time` time default NULL, `off_time` time default NULL, `gid` int(10) unsigned AUTO_INCREMENT NOT NULL, primary key (gid)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Worktime config. Like, Summer 8:00~17:00, Winter 9:00~18:00.';
13. 查某一列的值包含在指定字符串的记录。如要查code列的值包含在"123,789"中的记录。
SELECT * FROM test WHERE INSTR('123,789', code) > 0;
0 0
- MySQL的几个用法
- MySQL命令行的几个用法
- MySQL 几个比较重要的用法总结
- 几个标签的用法
- repeater的几个用法
- 几个函数的用法
- XmlSerializer的几个用法
- sql的几个用法
- typedef的几个用法
- const的几个用法
- MJExtersion的几个用法
- bitmap的几个用法
- sed的几个用法
- MySQL的几个工具
- mysql 的几个命令
- mysql 的几个命令
- 宏的几个绝妙用法
- 集合类的几个用法
- Android 显示或者隐藏软键盘
- android 创建数据库
- MAC中如何使用方向键连续的看图片
- 网络编程常用框架介绍
- javascript常用技巧
- MySQL的几个用法
- broadcast receiver、获取外播的电话号码、短信监听
- C++中的new/delete和new[]/delete[]
- EditPlus用Struts2完成简单的用户登陆
- Format String Attacks
- java 双重检查锁定及单例模式
- 使用编程语言进行截图的研究报告
- DS5020配置
- 机器学习实战笔记(Python实现)-02-k近邻算法(kNN)