Rumah  >  Artikel  >  pangkalan data  >  Tutorial terperinci subquery MySQL

Tutorial terperinci subquery MySQL

WBOY
WBOYke hadapan
2022-11-02 16:32:211801semak imbas

Artikel ini membawakan anda pengetahuan yang berkaitan tentang mysql, yang terutamanya memperkenalkan kandungan yang berkaitan tentang subkueri, termasuk subqueries bersarang selepas tempat, subqueries bersarang selepas dari, subqueries Nesting dan kandungan lain di belakang pilih, mari kita lihat pada itu, saya harap ia akan membantu semua orang.

Pembelajaran yang disyorkan: tutorial video mysql

Definisi: Penyataan pilihan bersarang dalam penyataan pilih bersarang ialah subquery.

subquery boleh muncul dalam:

select 
	....(select)..
from 
	....(select)..
where 
	....(select)..

1.di mana diikuti dengan subquery bersarang

select * from emp where sal > (select avg(sal) from emp) ;

2.from diikuti dengan subquery bersarang*

SELECT d.dname,AVG(s.grade) '部门平均薪资' 
FROM emp e
JOIN salgrade s ON e.sal BETWEEN s.losal AND s.hisal 
JOIN dept d ON e.deptno = d.deptno
GROUP BY d.dname

3 Sarang subquery selepas pilih

Ketahui nama jabatan setiap pekerja

写法一:看作临时表
SELECT t.ename,d.dname
FROM dept d JOIN (SELECT e.ename,e.deptno FROM emp e) t ON t.deptno = d.deptno   

写法二:连接查询
SELECT e.ename,d.dname FROM emp e JOIN dept d ON e.deptno = d.deptno

写法三:select后嵌套子查询
SELECT e.ename,(SELECT d.dname FROM dept d WHERE d.deptno = e.deptno) AS dept FROM emp e ;

4 🎜>

boleh menambah set hasil pertanyaan

SELECT ename,job FROM emp e WHERE job = 'CLERK'
UNION
SELECT ename,job FROM emp e WHERE job = 'SALESMAN'
dan data dalam dua jadual yang tidak berkaitan juga boleh disambungkan bersama. (Tetapi bilangan lajur tetap sama)

SELECT ename FROM emp 
UNION
SELECT dname FROM dept
5.*had

Inti utama, pertanyaan paging bergantung padanya

1) had adalah unik untuk mysql , tidak ditemui dalam pangkalan data lain, tetapi terdapat mekanisme serupa yang dipanggil rownum dalam Oracle.

2) had mendapatkan semula sebahagian daripada data dalam set hasil

3) Mekanisme sintaks: had startIndex, panjang

startindex mewakili kedudukan permulaan, bermula dari 0, 0 mewakili sekeping data pertama.

panjang bermaksud berapa banyak yang perlu diambil.

4) had ialah pautan pelaksanaan terakhir dalam pernyataan sql.

(nombor halaman semasa - 1) * Saiz halaman = permulaan subskrip halaman semasa

Pembelajaran yang disyorkan:

tutorial video mysql

Atas ialah kandungan terperinci Tutorial terperinci subquery MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:jb51.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam