mysql 문을 쿼리하는 방법

coldplay.xixi
풀어 주다: 2020-12-17 10:27:27
원래의
3322명이 탐색했습니다.

mysql 문 쿼리 방법: 테이블의 레코드를 쿼리할 때 코드는 [select * from table name where name='long' and age ='18']이고 from 뒤에 테이블 이름을 추가하고 where 뒤에 조건을 추가하고 select after는 필터링된 필드입니다.

mysql 문을 쿼리하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, mysql 버전 8.0.22 이 방법은 모든 브랜드의 컴퓨터에 적합합니다.

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

mysql 문을 쿼리하는 방법:

mysql에서 테이블의 레코드를 쿼리할 때

쓰기 순서는:select * from 表名 where name='long' and age ='18';

그러나 mysql에서의 실행은 순서는

  •  from입니다. 어떤 테이블인지 확인하려면 뒤에 테이블 이름을 추가하세요.

  •  여기에는 조건을 통해 이 테이블의 내용을 필터링하려면 조건이 옵니다.

  •  필터링된 데이터에서가 뒤따릅니다. by where This fields* are all fields

  # 쿼리문 실행 결과도 테이블이므로 가상 테이블로 간주할 수 있습니다

emp 직원 테이블을 생성합니다

필드가 많음 결과의 레이아웃이 지저분해질 수 있습니다. 쿼리 결과를 표준화하기 위해 쿼리 문 끝에 G를 추가할 수 있습니다. 1. 3보다 크거나 같은 쿼리 ID는 6보다 작거나 같습니다. data

  실제 작업을 보여줍니다. 1. 먼저 emp에서 나온 테이블을 확인합니다. 2. id >= 3 및 id <= 조건을 필터링합니다. 6; 3. *

select * from 表名\G;
로그인 후 복사

2를 선택합니다. 급여가 20,000, 18,000 또는 17,000

   select * from emp where id >= 3 and id <= 6; select * from emp where id between 3 and 6; between 等价于id >= 3 and id <= 6
로그인 후 복사

3인 데이터를 쿼리합니다. 이름에 o

문자가 포함된 직원의 이름과 급여를 쿼리합니다. % 여러 개의 임의 문자와 일치합니다. _ 임의의 문자 1개와 일치

select id,name from emp where salary = 20000 or salary = 18000 or salary = 17000; select id,name from emp where salary in (20000,18000,17000);
로그인 후 복사

4. 4개의 문자로 구성된 직원 이름과 급여

select name,salary from emp where name like '%o%';
로그인 후 복사

5를 쿼리합니다. ID가 3보다 작거나 6

select name, salary from emp where length(name) =4; select name ,salary from emp where name like "____"
로그인 후 복사

보다 큰 데이터를 쿼리합니다. 급여가 20000, 18000, 17000

select * from emp where id<3 or id >6; select * from emp where id not between 3 and 6;
로그인 후 복사

범위에 있지 않습니다. 7. 직무 설명이 비어 있는 직원 이름과 직위 이름을 쿼리합니다.null로 판단할 때만 사용할 수 있습니다. 민감하게 작성시 대문자, 소문자 모두 가능합니다

1. 그룹별

select * from emp where salary not in (20000,17000,18000);
로그인 후 복사

그룹핑 후 가장 작은 단위는 그룹내의 단일 데이터 정보가 아닌 그룹이 되어야 합니다

위와 마찬가지로 그는strict 모델에 설정이 없음

select name ,post from emp where post_comment is null;
로그인 후 복사

select * from emp group by post; # 按照部门分组
로그인 후 복사
2. count, avg)를 하나의 결과로 모아줍니다

mysql에서 그룹화한 후에는 그룹화된 필드 정보만 얻을 수 있습니다

다른 필드의 정보를 직접적으로 얻을 수는 없고, 다른 방법(aggregation 함수)을 통해 간접적으로 얻을 수 있습니다 )

Get각 부서의 최대 급여

   요구 사항은 각 부서에서 그룹이 있음을 나타내므로 먼저 그룹화한 후 집계 기능을 사용하여 값을 가져옵니다

show variables '%mode%'; # 找到严格模式所在的地方set session # 临时有效 set global # 永久有效set global sql_mode= 'strict_trans_tables' # 设置字符类型的自动截取set global sql_mode="strict_trans_tables,pad_char_to_full_length" #char 取出时 取消自动去空格set global sql_mode='strict_trans_tables,only_full_group_by' # 设置分组后 最小单位是组
로그인 후 복사

각 부서의 최소 급여

此时你如果还使用 select name from emp group by post; 就会报错 #ERROR 1055 (42000): 'day37.emp.name' isn't in GROUP BYselest 后应该接的是 你分组的字段名
로그인 후 복사

부서별 평균연봉

select post ,max(salary) from emp group by post;
로그인 후 복사

부서별 급여의 합

select post,min(salary) emp group by post; select post,min(salary) as '最小' from emp group by post;
로그인 후 복사
부서별 인원수
select post,avg(salary) from emp group by post;
로그인 후 복사

통계 그룹 내 숫자를 입력할 때 비어 있지 않은 필드를 사용하여 계산할 수 있습니다. . id 필드와 같이 데이터를 고유하게 식별할 수 있는 필드를 사용하는 것이 좋습니다.

3. 그룹화한 후 학과 이름과

각 학과 아래의 모든 학생 성

select post,sum(salary) from emp group by post;
로그인 후 복사

select post,count(age) from emp group by post; select post,count(salary) from emp group by post; select post,count(id) from emp group by post; select post,count(post_comment) from emp group by post;
로그인 후 복사

을 이어붙일 수도 있습니다

group_concat()能够拿到分组后每一个数据指定字段(可以是多个)对应的值

concat就是用来帮你拼接数据

group_concat(分组之后用)

concat(不分组时用)

查询每个员工的年薪

select name,salary*12 from emp;
로그인 후 복사

相关免费学习推荐:php编程(视频)

위 내용은 mysql 문을 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!