mysql查询笔记

一、基础查询查询

1、查询一个表的多个字段

select 字段1、字段2、字段3、 from 表名

select *from 表名;

2.查询设置别名

select 字段1 as  [别名1],字段2 as  [别名2]  from 表名;

3.去除重复记录

select distinct   字段列表 form 表名

示例: 

select distinct Question.industry as[ 行业] from Question

4.select 字段列表 from 表名 where 条件列表

              

 5.聚合函数

6.分组查询 

 1.select   字段列表 from 表名 [where 条件]  group by [having分组后过滤条件];

2.执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组,而having是分组之后对结果进行过滤。

判断条件不同,where不能对聚合函数进行判断,而having可以。

示例:

select TypeId as[项目类型]  , count(*) as[数量]  from  Question group by  TypeId
select TypeId as[项目类型]  , count(*) as[数量]  from Question   group by  TypeId having TypeId =2

总结:执行顺序:where>聚合函数>having

分组之后,查询的字段的 字段一般聚合函数和分组字段,查询其他字段无任何意义。 

7.排序查询

1. select 字段列表 from 表名 Order by 字段1    排序方式1, 字段2 排序方式2;

2.排序方式

asc:升序(默认值)

desc:降序

示例: 


select Title,  TypeId ,PublishDate from Question  order by PublishDate desc

注意:如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序。

8.分页查询

select 字段列表 from 表名 LIMIT 起始索引,查询记录数

注意
·起始索引从0开始,起始索引=(查询页码-1*每页显示记录数。
·分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT.如果查询的是第一页数据,起始索引可以省略,直接简写为limit 10。

 


9.多表查询

内连接:相当于查询A、B交集部分数据
外连接:
左外连接:查询左表所有数据,以及两张表交集部分数据
右外连接:查询右表所有数据,以及两张表交集部分数据
自连接:当前表与自身的连接查询,自连接必须使用表别名

 


 

--隐式查询
  --select Question.Title,ArticleType.TypeName from Question ,ArticleType  where Question.TypeId=ArticleType.TypeId
--内关联  select *from 表1 别名1 inner join 表2 别名2    on 关联字段 
    select q.Title,a.TypeName from Question q  inner join  ArticleType  a  on q.TypeId=a.TypeId

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值