数据库查询的基本方法,有很多不全的地方,自己学习使用

简单查询:

一、查询表名和列名

select *from  表名

select  列1,列2···from 表名

select distinct 列名 from表名            去重只能是一列

二、筛选

select top 3* from 表名   查询表的前三行

select top 3 列名 from 表名 where age >22 查询年龄大于22 岁的的前三行

1、等值与不等值

select *from 表名 where 列名=(!= ,>,<,>=,<=)值

2、多条件与范围

select*from 表名 where 条件 1 and或or 条件2

select*from 表名where  between····and···

select*from 表名 where 列  in(值)

三、排序

select *from 表名 order by 列名 asc/ desc   把一列进行升序或者降序排列

select*from 表名 where age<25 order by age asc ,code desc   把小于年龄25岁的按照升序排列,如果有相同年龄的,再把相同年龄的按照降序排列

四、分组

聚合函数

count(),max(), min(),sum(),avg()

select count(*) from 表名 where 列名       统计总行数

select count(列名)from 表名    只统计这一列中的非空值,如果有一格为空,会少统计一行

select  min(列名) from 表名   找这一列的最小值

select avg(列名)from 表名 算这一列的平均分

group by....having.....

1、group by后面跟的是列名

2、一旦使用group by分组了,则select 和from中间就不能用星号,只能包含两类东西,一类是 group by后面的列名,另一类是统计函数

select 列名,avg(列名) from 表名 group by 列名

having 后面一般跟的统计函数,根据分组后的结果进行进一步筛选

select 列名 from 表名 group by 列名 having count(*)>1  可以把重复的找出来,并且显示有几个相同的

子查询(嵌套查询)

使用查询语句查询一列数据出来,然后作为其他查询的查询条件中的参数来使用

内连接:     select*from 表 1

join 表2  on 表1列=表2列

join 表3 on表2列=表3列

外连接:左连接和右连接

合并数据

select  sname,ssex, sbirthdy from student
union
select Tname,Tsex,Tbirthday from Teacher

1、union中的所有选择列表必须具有相同的列数,相似的数据类型和相同的顺序

2、结果集中的列名来自第一个select语句

连接查询是列的扩展

联合查询是行的扩展

时间: 2024-10-12 08:26:45

数据库查询的基本方法,有很多不全的地方,自己学习使用的相关文章

bboss持久层设置数据库查询fetchsize参数方法

jdbc驱动程序api提供了指定了查询语句fetchsize的方法,有些数据库(比如oracle)本身提供了fetchsize的默认值,这样进行大量数据查询时,不会因为返回的结果集太大导致jvm爆掉,有些数据库可能没有默认设置fetchsize,因此需要手动指定.bboss持久层设置数据库查询fetchsize参数方法很简单,只要在poolman.xml文件的datasource中指定一个queryfetchsize参数即可,如果不指定就采用数据库驱动提供的默认值. 设置queryfetchsi

ci框架自定义数据库查询名称(方法)

适合刚接触PHP和ci框架的人,本人也是小白 原因:官方给的数据库查询方法可能不利于记忆使用,官方给的一些方法只能进行基础查询,每次复合查询都需要拼接条件,自己定义定义方法直接调用方法即可 操作步骤: 1.ci框架官网下载好解压后的文件夹会有application这个目录,在application目录下找到models子目录,在models子目录里建一个PHP文件(名字随便起,如Base_model.php) 这个文件里就是给你写自己定义的数据库查询方法,但开头要这样写(如下),自己定义的方法写

yii2.0数据库查询修改等方法

yii2.0学习有一段时间了,给大家分享一下一些简单的查询等如何操作. 查询:(这里最前面的Test是引用的模型名) Test::find()->all();    此方法返回所有数据: 这些查询出来是对象形式,但是一般转换成数组格式: Test::find()->asArray()->all();     加上asArray()就取得数组形式的数据了,下面的自行添加. Test::findOne($id);   此方法返回 主键 id=1  的一条数据(举个例子): 条件查询:wher

[moka学习笔记]yii2.0数据库查询的多种方法(未完待整理)

方法一:(使用model) $modelCommunityMail = CommunityMail::find()->where(['com_id'=>$id])->all(); 方法二:(直接拼写sql语句) $sql = "select * from `usho_community_mail` where date_format(`created_at`,'%Y%m') = date_format(curdate() ,'%Y%m') AND `com_id`=$id AN

laravel数据库查询是use方法的使用

public function buyerAlreadybrand(){        $effect = Request::get('effect');        $data = $this->brand->where(function($query) use($effect){            if($effect == -1){               return $query->where('effectivetime','<',date('Y-m-d'))

C#连接Oracle数据库查询数据

C#连接Oracle数据库可以实现许多我们需要的功能,下面介绍的是C#连接Oracle数据库查询数据的方法,如果您对C#连接Oracle数据库方面感兴趣的话,不妨一看. using System; using System.Collections.Generic; using System.ComponentModel using System.Data.OracleClient;;//这行和下一行都要先在引用中填加system.data.oracleclient using System.Da

50种方法优化SQL Server数据库查询(转载)

原文地址:http://www.cnblogs.com/zhycyq/articles/2636748.html 查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用

50种方法优化SQL Server数据库查询

新的关于数据库的内容.查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必要的行和列 10.查询语句不好,没有优化 可以通

SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种) .

SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种) 标签: sql server优化数据库服务器 2014-12-31 10:13 11988人阅读 评论(0) 收藏 举报 本文章已收录于: 今天看到一位博友的文章,觉得不错,转载一下,希望对大家有帮助,更多文章,请访问:http://blog.haoitsoft.com 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存