当前位置: 首页 > wzjs >正文

宁波网站优化建站公司宁波网站关键词优化排名

宁波网站优化建站公司,宁波网站关键词优化排名,新网站应该怎么做,个人博客wordpress**前言:**本节内容讲述基本查询, 基本查询要分为两篇文章进行讲解。 本篇文章主要讲解的是where子句、order by、limit查询。 如果想要学习对应知识的可以观看哦。 ps:本篇内容友友们只要会创建表了就可以看起来了哦!!&#xff01…

**前言:**本节内容讲述基本查询, 基本查询要分为两篇文章进行讲解。 本篇文章主要讲解的是where子句、order by、limit查询。 如果想要学习对应知识的可以观看哦。

ps:本篇内容友友们只要会创建表了就可以看起来了哦!!!

目录

Create

单行插入

多行插入

duplicate

replace

查询?

表达式查询

结构去重

比较运算符

逻辑运算符?

where子句

结果排序

筛选分页结果

综合使用


Create

单行插入

首先认识一下插入:

? ? ? ? insert into 表名称(列属性, 不添加默认为全列插入) values(数据)

这里我们创建一个学生表:

mysql> create table students(-> id int unsigned primary key auto_increment,-> sn int unsigned unique key,-> name varchar(20) not null,-> qq varchar(32) unique key-> );

然后我们插入:

insert into students values(1,11, '张三', '111111111');//如果这时候students后面不加括号, 就是默认的全列插入。 如果加上括号, 那么就是指定插入。

多行插入

多行插入就是插入数据的时候添加逗号, 多写几条数据。

insert into students values(2,12, '张三', '1111111111'), (3, 22, '李四','22222222');

duplicate

当我们插入的时候, 如果发生了冲突, 就不能进行插入。 并且如果加上duplicate key update就能在插入的时候对原数据进行更新

replace

除了insert也可以进行替换, 替换就是如果没有对应的行就进行插入, 如果存在就进行替换:

如果replace一个没有插入过的数据就是一行被影响, 但是如果插入一个插入过的就是修改, 并且是显示两行被影响:

查询

查询中我们使用最多的就是select语句, 下面我们创建一个表:

CREATE TABLE exam_result (id int unsigned NOT NULL AUTO_INCREMENT,name varchar(20) NOT NULL COMMENT '同学姓名',chinese float DEFAULT '0' COMMENT '语文成绩',math float DEFAULT '0' COMMENT '数学成绩',english float DEFAULT '0' COMMENT '英语成绩',PRIMARY KEY (id)
)

然后向其中插入一些数据后得到:

下面我们讲一下如何查询, 首先最基本的查询就是:

select 列名(可以是*, 代表全部查询;也可以是多列, 中间用逗号隔开) from 表名;

这样就可以查询到上面的图中的信息。

表达式查询

select 可以查询表达式的值:

所以, 我们就可以对表结构里面的列进行表达式运算, 进而求值:

select name, math + chinese from exam_result;

也可以重命名:

select name, math + chinese as total from exam_result;

结构去重

我们查询的结果可以去重, 使用distinct:

select distinct 列名 from 表名;

比较运算符

在mysql中进行条件筛选的时候可能会用到一些运算符, 比如下面的比较运算符以及后面的逻辑运算符。 这些运算符有的和我们以前的语言语法一样,有的不一样:

>, >=, <, <=

大于,大于等于,小于,小于等于

=

等于,NULL 不安全,例如 NULL = NULL 的结果是 NULL

<=>

等于,NULL 安全,例如 NULL NULL 的结果是 TRUE(1)

!=, <>

不等于

BETWEEN a0 AND a1

范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 TRUE(1)

IN (option, …)

如果是 option 中的任意一个,返回 TRUE(1)

IS NULL

是 NULL

IS NOT NULL

不是 NULL

LIKE

模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符

逻辑运算符

AND

多个条件必须都为 TRUE(1),结果才是 TRUE(1)

OR

任意一个条件为 TRUE(1), 结果为 TRUE(1)

NOT

条件为 TRUE(1),结果为 FALSE(0)

where子句

where子句能够按条件对数据进行行筛选:

select * from exam_result where english < 60;

下面来几个案例:

1、查询语文成绩在30 ~ 50分的学生:

select * from exam_result where chinese between 30 and 50;

2、数学成绩是58或者59或者98或者99的同学的以及数学成绩:

select name, math from exam_result where math = 58 or math = 59 or math = 98 or math = 99;

也可以使用in:

select name, math from exam_result where math in (58, 59, 98, 99);

3、姓孙的同学以及孙某同学:

姓孙的同学可能是孙某, 孙某某。 而孙某只能是孙某, 名为单字。 所以使用的通配符不一样, %可以模糊匹配任意多个字。 而_只能模糊匹配一个字:

select name from exam_result where name like '孙%';

select name from exam_result where name like '孙_';

4、总分在150以下的同学:

select name, chinese + math + english as total from exam_result where chinese + math + english >= 150; //注意, where这里不能使用total, 因为条件筛选执行顺序是在select 之前。 所以在where的时候还看不到as total。

5、名字不为空的人:

select * from exam_result where name is not null;

结果排序

我们可以对查询后的结果进行排序;

select name, math from exam_result order by math desc; //desc为降序排序, asc为升序

ps:这里要知道的是, null值要比任何值都要小。

下面为示例:

1、查询同学各门成绩, 依次按照数学降序,英语升序, 语文升序的方式显示(当数学相同,看英语的大小。 当英语相同的时候,再看语文的大小:

select name, math, english, chinese from exam_result order by math desc, english desc, chinese asc;

2、查询同学的总分, 升序排序:

select name, math + english + chinese as total from exam_result order by total;

这里的问题是为什么order by又可以使用别名了呢? 首先对于我们来说, 要对一个表进行排序, 一定要先有数据。但是筛选一定是先让数据筛出,再有数据。

对于一套select语句来说。 一定是from第一, where第二, select第三, order by第四。

筛选分页结果

我们的数据库数据量太大, 所以有时候我们就可以使用一下分页, 先看几行, 再看几行。

limit 后面跟数字就是从第一行往下数几行打印。 然后如果是limit数字, 数字就是从第一个数字开始往下数几行打印。

select * from exam_result limit 1;
select * from exam_result limit 3;
select * from exam_result limit 2,3;

也可以使用limit 数字 offset 页数。 其中, limit是每一页的行数, offset是默认从第几行开始:

select * from exam_result limit 2 offset 0;
select * from exam_result limit 2 offset 2;
select * from exam_result limit 2 offset 3;

综合使用

现在示例一个综合使用的例子作为文章的结尾:查询大于150的人并按照总分的降序进行排序, 然后拿出第一个人的信息:

select name, english + math + chinese total from exam_result as total where english + math + chinese > 150 order by total desc limit 1;

——————以上就是本节全部内容哦, 如果对友友们有帮助的话可以关注博主, 方便学习更多知识哦!!!


文章转载自:

http://Cac80dwL.nsppc.cn
http://pjpY8NTW.nsppc.cn
http://HcKoMK42.nsppc.cn
http://4DROBSfz.nsppc.cn
http://qqNaQ9nf.nsppc.cn
http://nMfiJ9Fz.nsppc.cn
http://FIcTfXY5.nsppc.cn
http://sbwY09wq.nsppc.cn
http://f1N9tDXP.nsppc.cn
http://olYXt3tG.nsppc.cn
http://Fas77qMo.nsppc.cn
http://XsR0HSZl.nsppc.cn
http://HNS9IBx7.nsppc.cn
http://fAuLMmww.nsppc.cn
http://LPIoGQjW.nsppc.cn
http://3qbUfKIe.nsppc.cn
http://ZgBDVjzO.nsppc.cn
http://yL6Ww9RB.nsppc.cn
http://YQ9dMPSU.nsppc.cn
http://sJNAAiXZ.nsppc.cn
http://ORe5YUmj.nsppc.cn
http://UL2JVJ70.nsppc.cn
http://RB3mvXnY.nsppc.cn
http://2EYKWwgE.nsppc.cn
http://m3SEQdF6.nsppc.cn
http://RLTOMyOe.nsppc.cn
http://YywJfPxZ.nsppc.cn
http://06h3GBGy.nsppc.cn
http://JdSOwojB.nsppc.cn
http://xiQZRZAW.nsppc.cn
http://www.dtcms.com/wzjs/620246.html

相关文章:

  • 源代码做网站做网站数据库设计
  • php整站开发 企业网站教程discuz可以做商城网站吗
  • 常州网络公司网站银川市网站建设
  • 万网续费登录网站网站建设合同属于技术服务么
  • 给网站做引流多少钱大学生个人简历word模板免费下载
  • 许昌小学网站建设蚌埠seo外包
  • 制作一个响应式网站开发工具网站开发 培训
  • wordpress网站速度优化seo外包公司是啥
  • 怎么做服务网站广告类的网站
  • 城市门户网站网站友链是什么情况
  • 百度seo关键词优化方案怎么样优化网站seo
  • 网站建设期的网站案例聊城网站建设设计开发公司
  • 刚注册在域名可以自己做网站吗discuz修改网站底部
  • 仅有网站做app怎么在手机上做网站
  • 网站打开很慢怎么做优化wordpress 3.6.2
  • 官方网站app最新下载个人网页制作 个人主页
  • wordpress列表显示全文南京网络优化培训
  • 网站建设合同有法律效益吗定制网站和模板网站的区别
  • 淄博网站建设培训学校设计制作一个ppt的完整步骤
  • 腾讯网站建设分析广州seo成功案例
  • 关键字网站采集周口网站设计制作
  • asp网站管理系统源码建设系统网站全名
  • 健康养老网站建设杭州最大网络公司排名
  • 手机如何翻到国外网站6.网站开发流程是什么
  • 网站一定要备案做网站很烧钱
  • 怎么修改网站内容网站开发主要包括哪些方面
  • 招远网站建设公司地址南阳微网站建设
  • 山东响应式网站鞍山市城市建设网站
  • 二级域名做网站好不好亿景网站建设
  • 公司建设网站的意义沧州新华区