zoukankan      html  css  js  c++  java
  • Mysql知识点个人整理

    1.概念

      数据库:保存有组织的数据的容器。

      表: 某种特定类型数据的结构化清单

      模式:关于数据库和表的布局和特性的信息?(有时指数据库)

      主键: primary key 一个列或一组列,其值能唯一区分表中的每个行(满足:唯一性和不为NULL)

      SQL: 结构化查询语言,与数据库通信的语言

      MySQL: DBMS 数据库系统管理软件

     注意点:

    • MySQL不区分大小写,但将关键字大写易于阅读,对表名,数据库名,列名最好使用时保持大小写一致。
    • 是否区分大小写,由数据库管理员在建立数据库时设置,Mysql通常默认不区分大小写。

    2.基本语句练习

       使用《MySQL必知必会》的样例表

      show

    use test;
    show tables;
    show create database test;
    show create table products;
    show status;
    show errors;
    show warnings; 
    •   选区products表的指定列,剔除重复行,保留从第三行起的接下来6行。
    select distinct prod_Name, prod_id, prod_name from products limit 3,6;

    •  在上一个操作之上加入排序,按价格降序排列,再按产品名称升序排列,同样取结果的第三行到第九行。
    select distinct prod_name, prod_id, prod_price from products 
    order by prod_price desc, prod_name
    limit 3,6;
    • 查找顾客表,返回指定除email地址以外的用户:
    select * from customers where cust_email is not 'rabbit@wascally.com';

    注意:获得的结果不包括email值为NULL的用户,NULL在MySQL通常指未知,故在本次查询中不返回带NULL的结果项。‘数据库不知道他们是否匹配,因此在匹配过滤或匹配不过滤时不返回他们’。所以,在进行条件查询时,需要额外考虑是否返回NULL项:

    • 查找顾客表,返回指定email地址以外以及未填写email地址的用户:
    select * from customers where cust_email != 'rabbit@wascally.com' or cust_email is null;
    • 【通配符】,查找所有email地址以‘rabb’开头的顾客的信息:
    select * from customers where cust_email like 'rabb%';

    %匹配任意个字符,‘_’匹配一个字符。

    通配符一般不要处于搜索模式的开始处,会比较慢。

    LIKE关键字必须对整个列值进行匹配,只需要部分值匹配可以使用正则表达式。

    • 【正则表达式】查询产品名以JetPack开始,000结尾的产品信息,区分大小写。分别以LIKE关键字和正则表达式处理:
    select * from products where prod_name like binary 'JetPack%000';
    select * from products where prod_name regexp binary '^JetPack.*000$';
  • 相关阅读:
    表达式和计算的描述
    表达式和计算的描述
    递归算法浅谈
    编程基本功训练:流程图画法及练习
    【2012.1.24更新】不要再在网上搜索eclipse的汉化包了!
    VS2008下直接安装使用Boost库1.46.1版本号
    android关键组件service服务(一)
    U盘安装咱中国人自己的操作系统UbuntuKylin14.04LST(超具体原创图文教程)
    数据流图的画法
    匈牙利算法
  • 原文地址:https://www.cnblogs.com/xdsux/p/9479237.html
Copyright © 2011-2022 走看看