>  기사  >  데이터 베이스  >  데이터베이스에서 단일 테이블 쿼리를 수행하는 방법은 무엇입니까?

데이터베이스에서 단일 테이블 쿼리를 수행하는 방법은 무엇입니까?

coldplay.xixi
coldplay.xixi원래의
2020-06-29 11:08:306084검색

데이터베이스 단일 테이블 쿼리 방법: 1. 쿼리 작업 선택, 열 필터링 2. Where 문, 행 필터링 3. 그룹별 그룹화 4. 그룹에 대한 필터 조건인 필터 조건이 실행됨별로 그룹에 배치됩니다. 5. 쿼리된 데이터를 정렬하여 정렬합니다. database 단일 테이블 쿼리에 대한 방법 :

데이터베이스에서 단일 테이블 쿼리를 수행하는 방법은 무엇입니까?1 필터링 스타일

重点中的重点:关键字的执行优先级
1:from #找到表
2:where #使用where指定的条件,去表中取出一条条记录
3:group by #将取出的数据进行分组,如果没有指定,则整体作为一组
4:having #将分组的结果按照having指定的条件进行过滤
5:select #指定select查询
6:distinct #去重
7:order by #将查询的结果按照order by指定的字段进行排序
8:limit #限制结果的显示数量
E4, 그룹화(그룹)

1:#select 查询操作
'''
注意所有select 查询后面右加括号的方法,比如,select user()这种带括号的都是Mysql的 内置方法,select本身就是查询操作,from只是说明从哪查,
'''
select * from 表名; #查询表中所有的数据  *代表所有
select 字段名 from 表名;#查询表中某一个字段的数据
select 字段名,字段名,字段名 from 表名;#查询表中多个字段的数据
select database();#查询返回当前操作的数据库
select user();#查询当前登陆的用户
select now;#查询返回当前的时间
===========================================================
2:#distinct 去重操作
'''
当使用select查询表某些字段数据的时候,这个字段中可能出现多个重复的数据,就可以使用distinct对查询出来的数据进行去重操作,distinct也可以对多个字段的数据进行联合去重
'''
select dictinct 字段名 from 表名;#对查出来的字段数据进行去重
select distinct 字段名,字段名 from 表名;#对多个字段查询的数据进行联合去重
===========================================================
3:#四则运算
'''
使用select 查询某个字段的数据的时候,对数值类型的字段数据,可以进行四则运算,四则运 算包括加减乘除等操作
'''
select 字段名*12 from 表名;#对查询出来的数据乘以12,返回结果,>>字段名要是数值类型
===========================================================
4:#concat字符串拼接和concat_ws指定分割符进行拼接(自定义显示的格式)
'''
concat内置函数可以对查询出来的字段数据进行字符串拼接
'''
select concat('姓名:',name) from 表名;#对查询出来的姓名字段的数据前面都加上一  个字符串姓名,能够友好的显示查询出来的数据的意思,其实就是字符串拼接
select concat(name,':',salary)as info from 表名;#concat还可以将两个字段的数据拼接,,产生一个新的字段数据显示出来,as是个这个字段重命名
'''
concat_ws()函数也只是字符串拼接,不过concat_ws的凭借方式是类似与python join拼接    的方式,就是以某个元素对多个字段的数据进行拼接
'''
    select concat_ws('_','姓名:',name,'性别:',sex)as info from 表名;
==========================================================
5:#case end 语句 对查询出来的每一个数据进行加工和显示
'''
case语句的作用是,对表中数据进行查询时,对于查询出来的语句进行进一步的加工,并且显示出来,case end语句有点像python里的if语句,不过sql的case语句需要表明开始和结束,case代表开始,end代表结束.when代表的就是if条件,else就是其他,当有多个when的时候,从第二个when开始就代表的类似于elif的意思,,,,,知道了解就好>>>>>>
'''
select(
case
    when name='田少岗' concat(name,'逗比')
    when name='田彩' concat(name,'女神')
    else 
    concat(name,'边玩去')
   end
)as now_name from 表名;
==========================================================
6:#select的相关总结;
    可以查一个,多个,*所有
    调用函数:now(),database(),concat(),concat_ws()
    可以四则运算
    可以去重 distinct
    可以使用case end 条件判断语句
E 5, 폴리머 기능

1:#范围查询
    #< > >= <= !=  <>代表不等于和!=是一个意思 
    select age from 表名 where age <100 and age>20;(多条件查询)
    #between 1 and 10 找寻1到10之间的
    select age from 表名 where between 1 and 100; >>注意包含1和100
    #in (1,2,3,4) 多选一
    select age from 表名 where age in (10,20,30,40);
    #将age=10和age=20的都能取出来
    select age from 表名 where age=10 or age=20;
2:#模糊查询
    #like
    like的表现形式是,&#39;%a&#39;查询以a结尾的,&#39;a%&#39;查询以a开始的,&#39;%a%&#39;查询包含a的
    select name from 表名 where name like &#39;田%&#39;;>>>查询出姓田的所有人
    like还有一种形式,&#39;_a&#39;,&#39;a_&#39;,&#39;a__&#39;一个划线代表一个字符,%代表的是任意长度
    select name from 表名 where name &#39;like &#39;田_&#39;;>>>查询出以田开头的两个字的姓名
    #regexp 可以使用正则匹配(记一下正则表达式)
3:#is is not 
    is null is not null 一般用来判断是不是空,
4:#逻辑运算
    and or not
E6, HAVING 필터 조건

R

&#39;&#39;&#39;group by可以对某个字段的值进行分组,这个字段有多少种值就分多少组,group by还有一个特性就是去重,一旦使用group by对数据分组了,就不能对某一条数据进行操作,永远都是这一组数据&#39;&#39;&#39;
group_concat()函数(只用来做最终的显示,不做中间数据的操作)可以显示当前这一组的所有信息,拼在一起显示
select post,group_concat(name),count(id) from employee group by post having count(id) < 2;
&#39;&#39;&#39;
mysql> set global sql_mode=&#39;STRICT_TRANS_TABLES,ONLY_FULL_GROUP_BY&#39;;
ONLY_FULL_GROUP_BY的语义就是确定select target list中的所有列的值都是明确语义,简单的说来,在ONLY_FULL_GROUP_BY模式下,target list中的值要么是来自于聚集函数的结果,要么是来自于group by list中的表达式的值。(了解就好)
&#39;&#39;&#39;
E7, 정렬 기준 Rreeee

8페이징 제한

1:#count 计数
2:#max  求最大值
3:#avg  求平均值
4:#min  求最小值
5:#sum  求和

관련 학습 권장사항: mysql 비디오 튜토리얼

위 내용은 데이터베이스에서 단일 테이블 쿼리를 수행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.