2015年11月27日,作为PHPer的我开始全面学习mysql数据库。

基本语法:

1、连接服务器:

mysql>mysql -h host -u root -p

回车 输入密码(本地环境可以不输入 -h host)

2、show databases;

查询所在服务器的所有数据库并显示

3、create database dbname;

例如: create database shop;

4、use dbname;

使用数据库,例如:  use shop;使用shop数据库

5、 只有数据库存在,并且 use,才能进行操作

下面创建 user数据表

create table user(

  id int(4) auto_increment,#字段id  4个长度

  user varchar(20) not null,#

  age tinyint(3) not null,

  sex enum('m','f') not null,

  ctime datetime not null,

  primary key(id)

  )Engine=InnoDB Default character set=utf8;

6、如果不知道怎么玩,输入  help contents;

不停地输入  help **; #**代表msyql提示的内容

7、查看当前mysql版本  select version();

查看当前用户:select user();

查看当前数据库:select database();

8、取消当前行的输入  ,键入 \c  回车

9、显示表的所有记录:select * from   user;

描述表的结构: desc user;

10、条件操作(选择行--记录)

 mysql> SELECT * FROM pet WHERE name = 'Bowser'; //查找name字段中等于Bowser的记录

 mysql> SELECT * FROM pet WHERE birth > '1998-1-1';//查找birth字段中大于指定年份的所有记录

mysql> SELECT * FROM pet WHERE species = 'dog' AND sex = 'f'; //查找种类为dog并且是母的记录---AND操作符
SELECT * FROM pet WHERE species = 'snake' OR species = 'bird';//查找各类为 snake或者 bird的记录---OR操作符

AND和OR可以混用,但AND比OR具有更高的优先级。如果你使用两个操作符,使用圆括号指明如何对条件进行分组是一个好主意。如下:
mysql> SELECT * FROM pet WHERE (species = 'cat' AND sex = 'm')
    -> OR (species = 'dog' AND sex = 'f');
11、条件操作(选择列--字段)mysql> SELECT name, birth FROM pet;  //选择 2个字段 ,中间用逗号分开
mysql> SELECT owner FROM pet; //选择单个字段

请注意该查询并不能保证数据的一致,增加关键字DISTINCT检索出每个唯一的输出记录:。如下:mysql> SELECT DISTINCT owner FROM pet;

可以使用综合语句(10、11),同时查询行和列,如不:
mysql> SELECT name, species, birth FROM pet
    -> WHERE species = 'dog' OR species = 'cat';
12、分类行  ORDER BY 语句  mysql> SELECT name, birth FROM pet ORDER BY birth;

  在字符类型列上,与所有其他比较操作类似,分类功能正常情况下是以区分大小写的方式执行的。

  这意味着,对于等同但大小写不同的列,并未定义其顺序。对于某一列,可以使用BINARY强制执行区分大小写的分类功能,

    如:ORDER BY BINARY col_name.

  默认排序是升序,最小的值在第一。要想以降序排序,在你正在排序的列名上增加DESC(降序 )关键字:

SELECT name, birth FROM pet ORDER BY birth DESC;

  可以对多个列进行排序,并且可以按不同的方向对不同的列进行排序。例如,按升序对动物的种类进行排序,然后按降序根据生日对各动物种类进行排序(最年轻的动物在最前面),  使用下列查询:(注意DESC关键字仅适用于在它前面的列名(birth);不影响species列的排序顺序。
  mysql> SELECT name, species, birth FROM pet
    -> ORDER BY species, birth DESC;

												

mysql基本知识---20151127-1的更多相关文章

  1. Mysql数据库知识-Mysql索引总结 mysql mysql数据库 mysql函数

    mysql数据库知识-Mysql索引总结: 索引(Index)是帮助MySQL高效获取数据的数据结构. 下边是自己整理的资料与自己的学习总结,,做一个汇总. 一.真的有必要使用索引吗? 不是每一个性能 ...

  2. Mysql存储过程知识,案例--mysql存储过程基本函数

    Mysql存储过程知识,案例: create procedure delete_setting(in p_settingid integer) begin delete from setting wh ...

  3. MySQL高级知识(十六)——小表驱动大表

    前言:本来小表驱动大表的知识应该在前面就讲解的,但是由于之前并没有学习数据批量插入,因此将其放在这里.在查询的优化中永远小表驱动大表. 1.为什么要小表驱动大表呢 类似循环嵌套 for(int i=5 ...

  4. MySQL高级知识(十五)——主从复制

    前言:本章主要讲解MySQL主从复制的操作步骤.由于环境限制,主机使用Windows环境,从机使用用Linux环境.另外MySQL的版本最好一致,笔者采用的MySQL5.7.22版本,具体安装过程请查 ...

  5. MySQL高级知识(十四)——行锁

    前言:前面学习了表锁的相关知识,本篇主要介绍行锁的相关知识.行锁偏向InnoDB存储引擎,开销大,加锁慢,会出现死锁,锁定粒度小,发生锁冲突的概率低,但并发度高. 0.准备 #1.创建相关测试表tb_ ...

  6. MySQL高级知识(十三)——表锁

    前言:锁是计算机协调多个进程或线程并发访问某一资源的机制.在数据库中,除传统的计算机资源(如CPU.RAM.I/O等)的争用外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是 ...

  7. MySQL高级知识系列目录

    MySQL高级知识(一)——基础 MySQL高级知识(二)——Join查询 MySQL高级知识(三)——索引 MySQL高级知识(四)——Explain MySQL高级知识(五)——索引分析 MySQ ...

  8. MySQL高级知识(十二)——全局查询日志

    前言:全局查询日志用于保存所有的sql执行记录,该功能主要用于测试环境,在生产环境中永远不要开启该功能. 1.如何开启 #1.通过my.cnf配置开启该功能. 注:对my.cnf文件配置后,需重启my ...

  9. MySQL高级知识(十一)——Show Profile

    前言:Show Profile是mysql提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量.默认情况下处于关闭状态,并保存最近15次的运行结果. 1.分析步骤 # ...

  10. MySQL高级知识(十)——批量插入数据脚本

    前言:使用脚本进行大数据量的批量插入,对特定情况下测试数据集的建立非常有用. 0.准备 #1.创建tb_dept_bigdata(部门表). create table tb_dept_bigdata( ...

随机推荐

  1. Java基础知识强化106:Java中 int 的各进制之间的转换

    1.二.八.十.十六进制之间的转换  下面是示例代码,我们直接通过JDK工具库中的方法实现的,如下: public static Integer valueOf(String s, int radix ...

  2. iOS数据持久化存储:归档

    在平时的iOS开发中,我们经常用到的数据持久化存储方式大概主要有:NSUserDefaults(plist),文件,数据库,归档..前三种比较经常用到,第四种归档我个人感觉用的还是比较少的,恰恰因为用 ...

  3. python 基础——多重继承

    原始的初始化 子类直接调用超类 __init__ 方法初始化,当形成钻石继承的时候,超类会被多次初始化,可能会有意向不到的问题: BaseClass /        \ OneClass    Tw ...

  4. hdu 4010 Query on The Trees LCT

    支持:1.添加边 x,y2.删边 x,y3.对于路径x,y上的所有节点的值加上w4.询问路径x,y上的所有节点的最大权值 分析:裸的lct...rev忘了清零死循环了两小时... 1:就是link操作 ...

  5. 解决tsc.exe 已退出 代码为 1

    最近从ABP上面下载一个项目,然后用VS2015编译后报错,在Web项目下ABP---Framework---scripts下面多了一个abp.d.ts,报了一大堆错误 上网一查,d.ts是TypeS ...

  6. JavaScript:exec()方法的用法及说明

    最近在看某知名js框架的源码,突然间发现自己对exec()方法竟然不太理解,然后就仔细的分析了一下这个方法 下面贴个exec()方法使用的代码出来 rquickExpr = /^(?:\s*(< ...

  7. 基础面试题——HTML/CSS

    1. 常用那几种浏览器测试?有哪些内核(Layout Engine)? (Q1)浏览器:IE,Chrome,FireFox,Safari,Opera. (Q2)内核:Trident,Gecko,Pre ...

  8. Android微信支付SDK开发笔记

    一.准备工作 1.开发平台及SDK下载 微信开放平台 https://open.weixin.qq.com 下载SDK 微信支付Demo下载 http://pay.weixin.qq.com/wiki ...

  9. 在远程系统上开发 SharePoint 应用程序

    适用范围: apps for SharePoint | Office 365 | SharePoint Foundation 2013 | SharePoint Server 2013 使用远程安装的 ...

  10. jQuery Ajax应用

    jQuery Ajax应用 本章主要了解jQuery的Ajax与传统的Ajax的区别,掌握JQuery的Ajax常用的方法与Ajax相关的函数. 详细内容,请点击jQuery Ajax应用查看: