mysql数据库中用到sql语句

一、删除mysql表中的的索引
alter table DM_Equipment_Fixed drop index name ;

   添加索引:
ALTER TABLE table_name ADD INDEX index_name (column_list)

   删除外键索引:
ALTER TABLE articles DROP FOREIGN KEY articles_ibfk_1;

   添加外键索引:
alter table locstock add foreign key locstock_ibfk2 (stockid) references product(stockid)


   添加外部索引:
alter table ch_customer ADD UNIQUE (ExCustomerID); 

   修改自增主键的开始数据:
alter table ch_customer AUTO_INCREMENT=100000;

   把第一个字段值赋给第二个字段:
SET SQL_SAFE_UPDATES = 0;(修改安全模式可以不通过主键进行修改)
update ch_customer set ExCustomerID=CustomerID; 
SET SQL_SAFE_UPDATES = 1;(修改回去安全模式只能通过主键进行修改
   修改字段的默认值为当前时间戳
ALTER TABLE `ch_customerworkday`
	CHANGE COLUMN `WorkDate` `WorkDate`  datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '工作日期';)


修改字段顺序
ALTER TABLE `ch_operattionlog` CHANGE `OperateType` `OperateType` tinyint(4) NOT NULL DEFAULT '0' COMMENT '操作类型:1;新增2:删除3:修改' AFTER `BusinessNo`;
ALTER TABLE `ch_operattionlog` CHANGE `ServiceCode` `ServiceCode` varchar(50) DEFAULT NULL COMMENT '服务编码' AFTER `OperateType`;


查询字段的重复值:
select FullName,count(*) as count from table group by FullName having count>1; 



二、添加列
alter table DM_Terminal add kCode VARCHAR(50);


修改列名:
alter table bbb change nnnnn hh int;



日期+1天

and TakeOffDate >=date_add(curdate(), interval 1 day)

统计的sql,行转列:
SELECT t1.*,t2.StatInfo FROM
        (
        SELECT
        STATTIME, STATITEM ,
        CONCAT(FORMAT(sum(case when StatItemName='无结果占比' then statValue end),2)*100,"%") as NHR_RATIO,
        FORMAT(sum(case when StatItemName='无结果数量' then statValue end),0) as NHR_COUNT,
        FORMAT(sum(case when StatItemName='总数量' then statValue end),0) as TOTALCOUNT
        from rpt_stat_sum_value
        where Dimension like 'JOURNEY_STAT%'
		and StatTime = '20161024'
        group by statTime , statItem
)AS t1
inner join (SELECT StatInfo,StatTime,StatItem FROM rpt_stat_sum_value AS t2 WHERE StatItemName='拆分结果') AS t2 on t1.StatTime=t2.StatTime 
and t1.StatItem=t2.StatItem


三、导入数据库
/usr/bin
在DOS的 MYSQL安装目录/BIN 目录下用下面命令:
mysql -u username -p databasename use database_name
然后使用下面这个命令
mysql>source 111.sql
当默认111.sql路径时,必须放在mysql里的bin里
成功导入!!!~~Yeah..
1.导出整个数据库
  mysqldump -u 用户名 -p 数据库名 > 导出的文件名
  mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
  2.导出一个表
  mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
  mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
  3.导出一个数据库结构
  mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
  -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table
  4.导入数据库
  常用source 命令
  进入mysql数据库控制台,
  如mysql -u root -p
  mysql>use 数据库
  然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
  mysql>source d:\wcnc_db.sql

猜你喜欢

转载自andy-angel.iteye.com/blog/1992251