mysql命令备忘

select max(customercode+0) from customer;

length:是计算字段的长度一个汉字是算三个字符,一个数字或字母算一个字符
CHAR_LENGTH(str) 返回值为字符串str 的长度,长度的单位为字符。
一个多字节字符算作一个单字符。对于一个包含五个二字节字符集, LENGTH()返回值为 10,而CHAR_LENGTH()的返回值为5。
CHARACTER_LENGTH(str) CHARACTER_LENGTH()是CHAR_LENGTH()的同义词。
BIT_LENGTH(str) 返回2进制长度.

连接数据库:mysql -u root -h 192.168.1.101 -p
查看数据库版本:select version();

设置mysql的连接通道的字符集
mysql> SET character_set_client = x;
mysql> SET character_set_results = x;
mysql> SET character_set_connection = x;

连接
mysql concat

经纬度距离排序
select *,(2 * 6378.137* ASIN(SQRT(POW(SIN(PI()*(111.86141967773438-lat)/360),2)+COS(PI()*33.07078170776367/180)* COS(lat * PI()/180)*POW(SIN(PI()*(33.07078170776367-lng)/360),2)))) as juli from area order by juli asc limit 0,20

1.ceil () 向上取整
   例: ceil(1.2) = 2
2.floor () 向下取整
    例: floor(1.2) = 1
3.round() 四舍五入

mysql suse 自动启动设置
# cp //usr/local/mysql/share/mysql/mysql.server   /etc/init.d/mysql
#chmod 755 /etc/init.d/mysql
#chkconfig --add mysql
# /etc/init.d/mysql start



ALTER TABLE Table DISABLE KEYS;
INSERT INTO ***;
ALTER TABLE Table ENABLE KEYS;




如果你的配置文件使用了类似my-innodb-heavy-4G.cnf作为配置文件的话。
Mysql可以正常启动,但innodb的表无法使用
在错误日志里你会看到如下输出:

InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes

现在需要做的事情就是把原来的 innodb 的ib_logfile×备份到一个目录下,然后删除掉原来的文件,重启 mysql。
你会看到ib_logfile*大小变成了你配置文件中指定的大小。
my-innodb-heavy-4G.cnf的话(log file 的大小是256M:innodb_log_file_size = 256M)
你会看到很多个268435456大小的文件。

查询重复数据
select user_name,count(*) as count from user_table group by user_name having count>1;

查询表信息
SELECT table_name, DATA_LENGTH, INDEX_LENGTH,table_type, engine FROM information_schema.tables where engine='InnoDB';

导出数据库
mysqldump -ubackup -p123456 -h 192.168.1.2 backup_test > D:\bak\bakcup.sql

导入数据库
1.进入mysql数据库控制台, 如mysql -u root -p
2.mysql>use 数据库
3.然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql>source d:\wcnc_db.sql



left join 和 count 共用
select  i.item_name,count( r.id) from hotel_activity_vote_item i left join hotel_activity_vote_record r on i.id=r.item_id group by i.id;


开启mysql定时任务
SHOW VARIABLES LIKE 'event_scheduler';
SET GLOBAL event_scheduler = 1;

通过in查询排序问题
select hotelcode, hotelname from hotel_info where hotelcode in('7ORANGE000013', '7ORANGE000011')  order by FIND_IN_SET(hotelcode,'7ORANGE000013,7ORANGE000011');

你可能感兴趣的:(mysql)