数据库select,数据库中select...from...where...各表示什么意思
大家好,今天来为大家分享数据库select的一些知识点,和数据库中select...from...where...各表示什么意思的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
数据库中select...from...where...各表示什么意思
关于数据库中select...from....where....表示的意思分别如下:
select的后面表示筛选的内容,from的后面表示筛选内容来自的位置,where的后面表示筛选的条件。
例如:SELECT* FROM T WHERE C1如'wiki%raid',此操作语言的返回结果为wiki10或wikipedia100。
SELECT语句内部各组成部百分的理论计算顺序如下:
1、FROM的表连接;
2、WHERE子句过滤出符合条件的行集;
3、GROUP BY子句对行集中的行进行分组和合并,以便多行对应于结果集中的一行;
4、使用HAVING子句从中间结果中筛选出满足条件的行集。
扩展资料:
数据操作语言是完成数据操作的命令,通常分为两种类型的数据操作。
1、数据检索问题(通常称为查询):查找所需的特定数据。
2、数据修改:插入,删除和更新数据。
数据操作语言通常由INSERT(插入),DELETE(删除),UPDATE(更新),SELECT(检索,也称为查询)等组成。由于SELECT通常被使用,因此通常称为查询(检索))的语言和答案分开显示。
数据库中select的用法
数据库中select的用法的用法你知道吗?下面我就跟你们详细介绍下数据库中select的用法的用法,希望对你们有用。
数据库中select的用法的用法如下:
1、select语句可以用回车分隔
?
1
2
3
4
$sql="select* from article where id=1"
和
$sql="select* from article
where id=1",都可以得到正确的结果,但有时分开写或许能更明了一点,特别是当sql语句比较长时
2、批量查询数据
?
1
2
可以用in来实现
$sql="select* from article where id in(1,3,5)"
3、使用concat连接查询的结果
?
1
$sql="select concat(id,"-",con) as res from article where id=1"
返回"1-article content"
4、使用locate
用法:
select locate("hello","hello baby");返回1
不存在返回0
5、使用group by
以前一直没怎么搞明group by和 order by,其实也满简单的,group by是把相同的结果编为一组
?
1
exam:$sql="select city,count(*) from customer group by city";
这句话的意思就是从customer表里列出所有不重复的城市,及其数量(有点类似distinct)
group by经常与AVG(),MIN(),MAX(),SUM(),COUNT()一起使用
6、使用having
having允许有条件地聚合数据为组
?
1
2
$sql="select city,count(*),min(birth_day) from customer
group by city having count(*)>10";
这句话是先按city归组,然后找出city地数量大于10的城市
btw:使用group by+ having速度有点慢
同时having子句包含的表达式必须在之前出现过
7、组合子句
where、group by、having、order by(如果这四个都要使用的话,一般按这个顺序排列)
8、使用distinct
distinct是去掉重复值用的
?
1
$sql="select distinct city from customer order by id desc";
这句话的意思就是从customer表中查询所有的不重复的city
9、使用limit
如果要显示某条记录之后的所有记录
?
1
$sql="select* from article limit 100,-1";
10、多表查询
?
1
2
3
4
$sql="select user_name from user u,member m
where u.id=m.id and
m.reg_date>=2006-12-28
order by u.id desc"
sql中select的作用是
作用就是从数据库中检索数据,并将查询结果返回给用户。
Select语句由select子句(查询内容)、from子句(查询对象)、where子旬(查询条件)、order by子句(排序方式)、group by子句(分组方式)等组成。
计算列出在FROM中的所有元素。(FROM中的每个元素都是一个真正的或者虚拟的表。)如果在 FROM列表里声明了多过一个元素,那么他们就交叉连接在一起。
如果声明了WHERE子句,那么在输出中消除所有不满足条件的行。如果声明了GROUP BY子句,输出就分成匹配一个或多个数值的不同组里。如果出现了HAVING子句,那么它消除那些不满足给出条件的组。
扩展资料:
DISTINCT从结果中删除那些重复的行。DISTINCT ON删除那些匹配所有指定表达式的行。ALL(缺省)将返回所有候选行,包括重复的。
如果给出了LIMIT或者OFFSET子句,那么 SELECT语句只返回结果行的一个子集。
如果声明了 FOR UPDATE或者 FOR SHARE子句, SELECT语句对并发的更新锁住选定的行。
你必须有 SELECT权限用来从表中读取数值。使用 FOR UPDATE FOR SHARE还要求UPDATE权限。
数据库里desc和select怎么用,代表什么意思
select表字段名1,表字段名2from表名orderby表排序字段名desc。select是选择哪些字符进行显示。
desc表示按“表排序字段名”倒序显示,不加desc,表示正序显示。
例如:select*fromstudentwhere总学分in(70,80)
ISNULL或ISNOTNULL:如果判断某一列是否为空或不为空;
distinct:从返回的结果数据集合中删除重复的行。
selectdistinct总学分fromstudentorderby总学分。
扩展资料select语句可以用回车分隔
$sql="select*fromarticlewhereid=1"和$sql="select*fromarticlewhereid=1"
都可以得到正确的结果,但有时分开写或许能更明了一点,特别是当sql语句比较长时。
批量查询数据
可以用in来实现
$sql="select*fromarticlewhereid;in(1,3,5)"
使用concat连接查询的结果
$sql="selectconcat(id,"-",con)asresfromarticlewhereid=1"
返回"1-articlecontent"
使用locate
用法:selectlocate("hello","hellobaby");返回1
不存在返回0
使用groupby
以前一直没怎么搞明groupby和orderby,其实也满简单的,groupby是把相同的结果编为一组
exam:$sql="selectcity,count(*)fromcustomergroupbycity";
这句话的意思就是从customer表里列出所有不重复的城市,及其数量(有点类似distinct)
groupby经常与AVG(),MIN(),MAX(),SUM(),COUNT()一起使用
OK,本文到此结束,希望对大家有所帮助。