MySql——创建数据表,查询数据,排序查询数据
参考资料:《Mysql必知必会》
创建数据表
在学习前首先创建数据表和插入数据。如何安装mysql可以看看上个博客https://www.cnblogs.com/lbhym/p/11675599.html
我的数据表和内容如下:
CREATE TABLE commodity (
id int(11) AUTO_INCREMENT,
typeid int,
name varchar(30) ,
price float ,
PRIMARY KEY (id)
) DEFAULT CHARSET=utf8;
AUTO_INCREMENT为自动增长,
PRIMARY KEY (id)设置id为主键
DEFAULT CHARSET=utf8;默认编码为utf8
下面再插入几条测试数据
insert into commodity values (null,1001,'牙刷',10.5),(null,1001,'毛巾',21.5),(null,1002,'茶几',999.9),(null,1003,'电视',3199),(null,1003,'冰箱',2999),(null,1004,'1 手机',1999),(null,1004,'2 手机',7699),(null,1004,'.3 手机',699.9),(null,1005,'T恤',21.5),(null,1005,'牛仔裤',99)
查询数据
1.查询单列数据
select name from commodity
输出:
牙刷
牛仔裤
毛巾
电视
茶几
冰箱
T恤
2 手机
1 手机
.3 手机
2.查询多列数据
select name,price from commodity
输出:
牙刷 10.5
毛巾 21.5
茶几 999.9
电视 3199
冰箱 2999
1 手机 1999
2 手机 7699
.3 手机 699.9
T恤 21.5
牛仔裤 99
3.查询所有列
select * from commodity
这个查询就是查询整张表格
4.查询不同的行
首先做如下查询:
select typeid from commodity
输出:
1001
1001
1002
1003
1003
1004
1004
1004
1005
1005
大家会发现有很多行重复了,如果不想出现重复的结果,可以使用distinct关键字
select distinct typeid from commodity
输出:
1001
1002
1003
1004
1005
5.限制查询结果
当我们不想查询所有行数据,只想查询指定行的数据时,就可以用到limit关键字
如下,只查询五行数据
select name from commodity limit 5
输出:
牙刷
毛巾
茶几
电视
冰箱
还可以指定开始行和行数,如下,查询从五行开始的五行数据
select name from commodity limit 5,5
输出:
1 手机
2 手机
.3 手机
T恤
牛仔裤
第一个数是开始的位置,第二个数是限定的行数。如果剩余数据不够五行,会查询剩下的所有数据。
排序查询数据
1.排序数据
可以使用order by关键字对后面跟着的字段进行排序。如下:
select * from commodity order by price
输出:
1 1001 牙刷 10.5
2 1001 毛巾 21.5
9 1005 T恤 21.5
10 1005 牛仔裤 99
8 1004 .3 手机 699.9
3 1002 茶几 999.9
6 1004 1 手机 1999
5 1003 冰箱 2999
4 1003 电视 3199
7 1004 2 手机 7699
如果指定排序的字段是字母,就按字母顺序排序
2.按多个列排序
除了上面的按一个字段排序,还可以根据多个字段来排序,如下:
select * from commodity order by typeid,price
输出:
1 1001 牙刷 10.5
2 1001 毛巾 21.5
3 1002 茶几 999.9
5 1003 冰箱 2999
4 1003 电视 3199
8 1004 .3 手机 699.9
6 1004 1 手机 1999
7 1004 2 手机 7699
9 1005 T恤 21.5
10 1005 牛仔裤 99
上述例子中:会优先按typeid排序,只有当typeid相同时,才会按price排序
3.指定排序方向
默认的排序方向时升序的,还可以按降序desc来进行排序。如下:
select * from commodity order by price desc
输出:
7 1004 2 手机 7699
4 1003 电视 3199
5 1003 冰箱 2999
6 1004 1 手机 1999
3 1002 茶几 999.9
8 1004 .3 手机 699.9
10 1005 牛仔裤 99
2 1001 毛巾 21.5
9 1005 T恤 21.5
1 1001 牙刷 10.5
MySql——创建数据表,查询数据,排序查询数据的更多相关文章
- MySQL为数据表的指定字段插入数据
username not null 没有默认值/有默认值 insert不插入username字段 均不报错 2014年07月23日21:05 百科369 MySQL为数据表的指定字段插入数据 ...
- MySQL 按照数据库表字段动态排序 查询列表信息
MySQL 按照数据库表字段动态排序 查询列表信息 背景描述 项目中数据列表分页展示的时候,前端使用的Table组件,每列自带对当前页的数据进行升序或者降序的排序. 但是客户期望:随机点击某一列的时候 ...
- mysql一张表到底能存多少数据?
前言 程序员平时和mysql打交道一定不少,可以说每天都有接触到,但是mysql一张表到底能存多少数据呢?计算根据是什么呢?接下来咱们逐一探讨 知识准备 数据页 在操作系统中,我们知道为了跟磁盘交互, ...
- MySQL的ALTER变更、正则查询、分组查询、排序查询以及事务查询的概
MySQL的表和字段信息的变更 ALTER TABLE table-name DROP column-name; #删除某个字段 ALTER TABLE table-name ADD column-n ...
- Hibernate的配置跟简单创建一个表并插入一条数据
首先官网下载一个hibernate的架包,由于时间关系,博主已经分享到了百度网盘:https://pan.baidu.com/s/1Mw0Og3EKnouf84Njz9UicQ,提取码lens Hib ...
- MySQL 创建唯一索引忽略对已经重复数据的检查
MySQL 创建唯一索引忽略对已经重复数据的检查 在创建唯一索引的基础上加上关键字"IGNORE "即可.(注意,经测试,在5.7版本已经不再支持该参数) # 重复数据 mysql ...
- MySQL创建民族表的SQL语句
MySQL创建民族表的SQL语句 CREATE TABLE `nation` ( `id` ) unsigned NOT NULL AUTO_INCREMENT, `nation` ) NOT NUL ...
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
1.Oracle表的管理 表名和列名的命名规则: 必须以字母开头: 长度不能超过30个字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z, a-z, 0-9, $, # 等. Oracl ...
- MySQL数据库、数据表和字段字符集查询、修改和配置
一.设置编码 LINUX 修改vi/etc/my.cnf WINDOWS my.ini 在[client]下添加 default-character-set=utf8 在[mysqld]下添加 ...
- php标签云制作——数据表的结构和查询方法
1.数据表的结构: 创建建两张数据表,结构如下: 标签tag表: 文章mood表: 其中mood表中的tag字段,以tag表的id字段+“,”+tag表的id字段, 2.查询方法: 例如:如果需要某篇 ...
随机推荐
- Hadoop和YARN :map+shuffle+reduce走读
今天做了一个hadoop分享,总结下来,包括mapreduce,及shuffle深度讲解,还有YARN框架的详细说明等. v\:* {behavior:url(#default#VML);} o\:* ...
- [TYVJ2340] 送礼物 - 双向搜索
题目限制 时间限制 内存限制 评测方式 题目来源 1000ms 131072KiB 标准比较器 Local 题目描述 作为惩罚,GY被遣送去帮助某神牛给女生送礼物(GY:貌似是个好差事)但是在GY看到 ...
- 实用---生命游戏 Java
本程序由四个类组成: 其中Init_data,用于初始化各个活细胞的状态judge_state,用于判断下一代的细胞状态,并进行更新.set_color,用于给GUI界面中各个细胞涂色set_fram ...
- 一张图看懂Rxjava的原理
前言 Rxjava是NetFlix出品的Java框架, 官方描述为 a library for composing asynchronous and event-based programs usin ...
- 重装系统快速恢复使用习惯(各种图标摆放位置、环境变量、C盘可能存放的文件备份、编辑器配置、语言环境导出)
目录 电脑重装系统注意点 - 尽可能快速恢复你熟悉的 windows 基本使用场景 最好截图的点 常见文件拷贝 入口 查看桌面图标.快捷方式有哪些 程序员大合集 环境变量相关 pycharm 快捷键等 ...
- ThingJS和传统3D开发的区别
物联网3D可视化开发已经辐射到各行各业,无论车间还是消防,城市还是粮仓,亦或是地铁.科技园,物联网可视化是科技的进步,也是行业的进步.而传统的3D可视化开发实施起来并不那么乐观.如果使用ThingJS ...
- Java设计模式之状态模式详解
(本文由言念小文原创,转载请注明出处) 在实际工作中经常遇到某个对象,处于不同的状态有不同行为逻辑.且状态之间可以相互迁移的业务场景,特别是在开发通信协议栈类软件中尤为多见.<设计模式之禅> ...
- Java IO_002.InputStream与OutputStream--字节流对数据的操作(读取与写入)
Java IO之FileInputStream与FileOutputStream对象常用操作 涉及到文件(非文件夹)内容的操作,除了要用到File(见之前文章),另外就必须用到输入流或输出流. 输入流 ...
- 基于redis解决session分布式一致性问题
1.session是什么 当用户在前端发起请求时,服务器会为当前用户建立一个session,服务器将sessionId回写给客户端,只要用户浏览器不关闭,再次请求服务器时,将sessionId传给服务 ...
- Android dos操作
adb shell 开Androidls 列表cd +目录名 打开目 ...