zoukankan      html  css  js  c++  java
  • 2018.08.20MySQL常用命令总结(二)

    六、视图

    视图创建形式:

    create  view   视图名 [(列名1,列名2...]   as  一条复杂select语句;

    可以将select语句所取得的列重新命名,但也可以不重新命名,则使用select语句中的给定列名。

    视图的使用

    其实就是当作一个查询表来用(通常只用于select

    select  *  from  视图名  where 条件  order by .....

    修改视图: 

    alter view 视图名 [(列名1,列名2...] as select语句;

    删除视图: 

    drop  view  [if exists] 视图名;

    七、数据插入和删除

    3种形式

    形式1

    insert into  表名(字段名1,字段名2....values (a1,值a2.....)(b1,值b2.....).....

    形式2

    insert into  表名1(字段名1,字段名2....select  字段名1,字段名2....  from  表名2

    形式3

    insert  into  表名  set  字段名1=1,字段名2=2.....

    删除数据

    基本语法形式:

    delete from 表名 [where条件] [order排序] [limit限定]

    八、数据查询语言DQL 

    基本查询

    语法形式

    select [all | distinct] 字段或表达式列表 [from子句] [where子句] [group by子句] [having子句] [order by子句] [limit子句]

     [all | distinct]

    用于设定所select出来的数据是否允许出现重复行(完全相同的数据行)

    all:允许出现——默认不写就是All(允许的)。

    distinct:不允许出现——就是所谓的“消除重复行”。

    from子句

    就是指定数据的来源,其实就是“表”,可以是一个表名,也可以是多个表——多表查询了。

    where子句

    一个概念:where子句,相当于phpjs中的if条件语句:其最终结果就是布尔值(true/false

    phpif($n  % 4 == 0 && $n % 100 != 0  || $n % 400 == 0 ){}

    则:

    where  true,  where  1;    where 1=1;  都表示true

    where  false,  where  0;    where 1<>1;  都表示false

    where中可用的运算符:

    算术运算符: +  -  *  /   %

    比较运算符: >   >=   <    <=   =(等于)   <>(不等于)   

    ==(等于,mysql扩展),!=(不等于,mysql扩展)

    逻辑运算符: and(与)  or(或)   not(非)

    between语法:

    XX  between  1  and   2

    含义:字段XX的值在值1和值2之间(含),相当于:XX >=1 and XX<=2

    in语法:XX in (1,2,3,4,5)        XX not in ()

    Xx = 1 or  xx = 2 or xx =3...

    XX  in (1,值2.......)

    含义:XX等于其中所列出的任何一个值都算成立,相当于:

    XX = 1  or XX = 2  or  XX = 2

    like语法(模糊查找):

    语法形式: XX like  ‘要查找字符’;

    group  by  分组子句

    形式:

    group  by  字段1  排序方式1,字段2 排序方式2.....

    通常都只进行一个字段的分组。

    having子句

    having子句其实概念跟where子句完全一样:

    where是针对表的字段的值进行“条件判断”

    having是只针对groupby之后的“组”数据进行条件判断,即

    其不能使用:字段名>10

    但可以使用:count(字段名)>10, 或  max(price) > 2000, 但如果字段是分组依据,也可以。

    当然,通常也可以使用select中的有效的字段别名,比如:

    select count(*) as f1 , max(f1) as f2  from tab1  group by f3 having f1 > 5 and  f2 < 1000;

    Order by子句

    形式:

    order  by  排序字段1  [排序方式],  排序字段2  [排序方式].....

    limit子句

    形式:

    limit   [起始行号start], 要取出的行数num

  • 相关阅读:
    JDBCUtils
    C3P0配置
    反射基本常识(二)
    反射基本常识(一)
    String to Integer (atoi)
    ZigZag Conversion
    Longest Palindromic Substring
    Palindrome Number
    Reverse Integer
    Longest Substring Without Repeating Characters
  • 原文地址:https://www.cnblogs.com/sccwxl/p/9505288.html
Copyright © 2011-2022 走看看