MySQL高级操作(上)

一、MySQL表复制

create table t2 like t1;               #复制表结构,t2可以学习到t1所有的表结构

insert into t2 select * from t1;    #复制表数据,但是这样还是会有缺陷,因为没有考虑到列的对应,因为t1与t2的表结构完全一致,所以此次操作才不会出错!

建议:

insert into t3(name) select name from t1; #指定复制的列

二、MySQL索引

1、直接创建索引

create index index_name on table_name(column_list);                #创建普通索引

create unique index index_name on table_name(colume_list);    #创建唯一索引,请在创建唯一索引之前确保该列没有重复值,不然,创建不成功!

2、直接删除索引

drop index index_name on table_name;

3、修改-创建索引

alter table table_name add index [index_name](colum_list);                #创建普通索引

alter table table_name add unique [index_name](column_list);            #创建唯一索引

alter table table_name add primary key [index_name](column_list);   #创建主键索引,如果不添加index_name,则使用column_list作为默认索引名

4、修改-删除索引

alter table table_name drop index index_name;            #删除普通/唯一索引

alter table table_name drop primary key;                      #删除主键索引

【推荐使用方式3、4】

【附】

1、查看索引:show
index from t1 \G

2、alter table table_name modify id int not null;

三、MySQL视图

视图:通过一个条件,把一部分数据从一张表里面提取出来,形成一张中间表,这张表就是视图

注意:视图随着主表的改变而改变

1、创建视图

create view view_name
as select *from table_naem where id > 4 and id <= 10;

3、查看创建了哪些视图

showtables; #视图就是一个中间表

3、查看视图中数据

select* from view_name; #与查看表数据相同

4、删除视图

drop view view_name;

四、MySQL内置函数补充

查看函数作用及简单示例:?
function_name

e.g. ? lcase;

1、字符串函数

1)lcase(“string”)/ucase(“string”)
          #转换成小写/大写,与lower(str)/upper(str)作用相同

2)length(“string”)
                                  #返回字符串的长度

3)repeat(“string”,n)
                               #将字符从重复n次

4)space(n)
                                              #生成n个空格

2、数学函数

1)bin(decimal_number)
                         #十进制转二进制

2)ceiling(n)
                                            #作用与ceil相同,向下取整

3)sqrt(n)
                                                 #开平方

4)max(col)/min(col)
                              #取最大/最小值,聚合时使用

5)rand()
                                                  #生成随机数

select * from table_name order by rand(); #使用rand函数作为排序基准

3、日期函数

1)datediff(expr1,expr2)
                            #返回expr1和expr2相差的天数,如果expr1>
expr2,则返回正值

MySQL学习笔记_9_MySQL高级操作(上)的更多相关文章

  1. MySQL学习笔记_10_MySQL高级操作(下)

    MySQL高级操作(下) 五.MySQL预处理语句 1.设置预处理stmt,传递一个数据作为where的判断条件 prepare stmt from "select * from table ...

  2. 【PHP+MySQL学习笔记】php操作MySQL数据库中语句

    1.连接 MYSQL 服务器的函数 mysql_connect();<?php $con = mysql_connect("localhost","root&quo ...

  3. mysql学习笔记02 CRUD操作

    添加数据insert into 表名(字段列表) values(对应字段的列表值) 查询数据 select *from 表名 where 条件select *from 表名 where 1条件 1表示 ...

  4. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  5. MySQL学习笔记-锁相关话题

    在事务相关话题中,已经提到事务隔离性依靠锁机制实现的.在本篇中围绕着InnoDB与MyISAM锁机制的不同展开,进而描述锁的实现方式,多种锁的概念,以及死锁产生的原因.   Mysql常用存储引擎的锁 ...

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

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

  7. Mysql学习笔记(三)对表数据的增删改查。

    正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...

  8. Hadoop学习笔记(7) ——高级编程

    Hadoop学习笔记(7) ——高级编程 从前面的学习中,我们了解到了MapReduce整个过程需要经过以下几个步骤: 1.输入(input):将输入数据分成一个个split,并将split进一步拆成 ...

  9. MySQL学习笔记一

    MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...

随机推荐

  1. MySQL 连接的使用

    MySQL 连接的使用 在前几章节中,我们已经学会了如果在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据. 本章节我们将向大家介绍如何使用 MySQL 的 JOIN ...

  2. 学习笔记:Zookeeper选举机制

    1.Zookeeper选举机制 Zookeeper虽然在配置文件中并没有指定master和slave 但是,zookeeper工作时,是有一个节点为leader,其他则为follower Leader ...

  3. Web Worker Best Practices

    使用Web Worker可以把一些比较计算量相对大的阻塞浏览器响应的计算放在单独的线程里计算. 请求优化 构造Worker的时候需要给定js的链接URL,worker内部请求js运行代码.假如work ...

  4. NestedScrollView嵌套ViewPager

    NestedScrollView嵌套ViewPager 效果图 重写ViewPager package com.kongqw.kbox.view; import android.content.Con ...

  5. android MultiDex multidex原理原理下遇见的N个深坑(二)

    android MultiDex 原理下遇见的N个深坑(二) 这是在一个论坛看到的问题,其实你不知道MultiDex到底有多坑. 不了解的可以先看上篇文章:android MultiDex multi ...

  6. (译)Objective-C 类属性

    翻译自:Objective-C Class Properties 译者:Haley_Wong 由于Swift 3.0 出了太多令人兴奋的新特性,人们很容易忽略 Objective-C中的小改动.苹果展 ...

  7. javap反编译命令详解&Eclipse中配置javap命令

    javap命令所有参数如下图所示: javap 命令用于解析类文件.其输出取决于所用的选项.若没有使用选项,javap 将输出传递给它的类的 public 域及方法.javap 将其输出到标准输出设备 ...

  8. springMVC+Hibernate4+Spring整合一(配置文件部分)

    本实例采用springMvc hibernate 与 spring 进行整合, 用springmvc 取代了原先ssh(struts,spring,hibernate)中的struts来扮演view层 ...

  9. GDAL库三个读取Jpeg2000格式驱动测试

    0.目的 GDAL库中提供了四五种读取Jpeg2000的驱动,但是各个驱动读取数据的效率各不相同,下面就针对三种读取jpeg2000的效率进行测试. GDAL库中提供的读取Jpeg2000的驱动有下面 ...

  10. 4.2、Android Studio压缩你的代码和资源

    为了让你的APK文件尽可能的小,你需要在构建的时候开启压缩来移除无用的代码和资源. 代码压缩可在ProGuard中使用,可以检测和清除无用的类,变量,方法和属性,甚至包括你引用的库.ProGuard同 ...