数据准备
drop table if exists class;
create table class(
    class_no int(2) unsigned zerofill primary key auto_increment comment '班级编号',
    class_name varchar(30) not null comment '班级名称'
);
insert into class values(1, '培优班');
insert into class values(2, '普通班');

drop table if exists student;
create table student(
    stu_no int(2) unsigned zerofill primary key auto_increment comment '学员编号',
    stu_name varchar(30) not null comment '学员姓名',
    stu_sex varchar(3) not null comment '学员性别',
    stu_age tinyint(2) unsigned zerofill comment '学员年代',
    class_no int(2) unsigned zerofill comment '所在班级编号',
    foreign key(class_no) references class(class_no)  
);
insert into student values(01, '李白', '男', 18, 01);
insert into student values(02, '杜甫', '男', 20, 01);
insert into student values(03, '张飞', '男', 32, 02);
insert into student values(04, '韩信', '男', 26, 02);
insert into student values(05, '了龙', '男', 27, 02);
insert into student values(06, '大乔', '女', 17, 01);
insert into student values(07, '小乔', '女', 16, 01);
insert into student values(08, '小乔', '女', 16, 01);
insert into student values(09, '关哥', '男', 32, 02);
insert into student values(10, '刘备', '男', 36, null);
alter table student drop foreign key `student_ibfk_1`;

1: [ order by ] 排序
    例: select * from student;
    例: select * from student order by stu_age;        --对学生年龄进行排序
    例: select * from student order by stu_age desc;   --desc表示的就是从大到小排序,默认是升序
    例: select * from student order by stu_age asc;    --asc表示从小到排序,默认的就是asc
    例: select * from student order by stu_age asc, stu_no desc;  --如果一个字段不能区分大小时,则可以按照第二个字段来区分

字符集与校对规则
    例: show character set;   --查看mysql数据库所支持的字符集
    例: show collation;
    例: show collation like 'gbk%';

    ps: 每个字符集都会提供一个或者多个校对规则, 一般的校对规则命名是: 字符集_地域名_ci|cs|bin;
    ci: 表示不区分大小写;
    cs: 表示区分大小写;
    bin: 表示使用编码比较;   [a-z]:[97-122]    [A-Z]:[65-90]

    create table t_1(
        name varchar(20)
    ) character set gbk collate gbk_chinese_ci;
    insert into t_1 values('C'),('a'),('B');
    select * from t_1 order by name;
    
    create table t_2(
        name varchar(20)
    ) character set gbk collate gbk_bin;
    insert into t_2 values('C'),('a'),('B');
    select * from t_2 order by name;
*******************************************************************************************************

2: [ limit ]限制获得的记录数
    语法: limit offset, row count。  offset表示索引值(从0开始), row count表示要获取的记录数
    select * from student;
    例: select * from student limit 1, 5;   --从第二条数据开始获取,获取5条数据
    例: select * from student limit 1, 50;  --如果要获取的数据,超过了总共的记录数,这时则会获取所有的
    例: select * from student limit 5;      --如果只有一个参数时同则表示要获取的记录数,从0开始获取
*******************************************************************************************************

3: [ distinct ] 除去重复的记录
    ps: 只有要查询的字段值全部完全相同时,才能算是重复,并不是部分的字段相同
    例: select distinct stu_name from student;
    例: select distinct stu_name, stu_age from student;
    例: select distinct stu_no, stu_name, stu_age from student;   --这里不能去重,因为没有重复的记录

    例: select all stu_name, stu_age from student;  --all与distinct相反, all表示获取到所有的记录, 但默认就是all

Mysql单表查询(胖胖老师)的更多相关文章

  1. Mysql 单表查询 子查询 关联查询

    数据准备: ## 学院表create table department( d_id int primary key auto_increment, d_name varchar(20) not nul ...

  2. python 3 mysql 单表查询

    python 3 mysql 单表查询 1.准备表 company.employee 员工id id int 姓名 emp_name varchar 性别 sex enum 年龄 age int 入职 ...

  3. Mysql 单表查询-排序-分页-group by初识

    Mysql 单表查询-排序-分页-group by初识 对于select 来说, 分组聚合(((group by; aggregation), 排序 (order by** ), 分页查询 (limi ...

  4. Mysql 单表查询where初识

    Mysql 单表查询where初识 准备数据 -- 创建测试库 -- drop database if exists student_db; create database student_db ch ...

  5. MySQL单表查询

    MySQL之单表查询 创建表 # 创建表 mysql> create table company.employee5( id int primary key AUTO_INCREMENT not ...

  6. python mysql 单表查询 多表查询

    一.外键 变种: 三种关系: 多对一 站在左表的角度: (1)一个员工 能不能在 多个部门? 不成立 (2)多个员工 能不能在 一个部门? 成立 只要有一个条件成立:多 对 一或者是1对多 如果两个条 ...

  7. mysql 单表查询

    一 单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数   二 ...

  8. SQL学习笔记四(补充-1)之MySQL单表查询

    阅读目录 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录 ...

  9. python开发mysql:单表查询&多表查询

    一 单表查询,以下是表内容 一 having 过滤 1.1 having和where select * from emp where id > 15; 解析过程;from > where ...

随机推荐

  1. swift 相关小随笔

    关键词 typealias 对已经存在的类重命名 let  修饰不可变值 var  修饰可变的值 lazy  懒加载修饰符,用到的时候才会加载 convenience 原方法的备用方法,方法一致,但是 ...

  2. [BZOJ 4419][Shoi2013]发微博

    4419: [Shoi2013]发微博 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 665  Solved: 364[Submit][Status] ...

  3. linux,windows,ubuntu下git安装与使用

    ubuntu下git安装与使用:首先应该检查本地是否已经安装了git ,如果没有安装的话,在命令模式下输入 sudo apt-get install git 进行安装 输入git命令查看安装状态及常用 ...

  4. Alpha第五天

    Alpha第五天 听说 031502543 周龙荣(队长) 031502615 李家鹏 031502632 伍晨薇 031502637 张柽 031502639 郑秦 1.前言 任务分配是VV.ZQ. ...

  5. 2017-2018-1 Java演绎法 第六七周 作业

    团队任务:修改完善<需求规格说明书>等 团队组长:袁逸灏 本次编辑:刘伟康 修改完善上周提交的需求规格说明书 [markdown 链接] [pdf 链接] 不足之处:仅就现在的问题来看,结 ...

  6. 敏捷冲刺每日报告四(Java-Team)

    第四天报告(10.28  周六) 团队:Java-Team 成员: 章辉宇(284) 吴政楠(286) 陈阳(PM:288) 韩华颂(142) 胡志权(143) github地址:https://gi ...

  7. 学号:201621123032 《Java程序设计》第4周学习总结

    1:本周学习总结 1. 写出你认为本周学习中比较重要的知识点关键词 继承,多态,父类object,抽象类 2. 尝试使用思维导图将这些关键词组织起来 2:书面作业 2.1: 面向对象设计 1. 讲故事 ...

  8. Android属性动画 nineoldandroids

    各种资源链接 nineoldandroids 任玉刚的五个图片滑动,点击menu http://blog.csdn.net/singwhatiwanna/article/details/1763998 ...

  9. 树莓派3启动wifi并且配置wifi

    概述 树莓派3内置了wifi和蓝牙模块,我们不用像以前的版本那样,再去购买一个外接的模块练到raspberry上. 当我们第一次启动了树莓派的时候,必然使用了网线,但是之后的每一次使用,我们当然更希望 ...

  10. decltype操作符

    关于decltype操作符的说明: 1.在C++中,decltype作为操作符,用于查询表达式的数据类型.decltype在C++11标准制定时引入,主要是为泛型编程而设计,以解决泛型编程中,由于有些 ...