Rumah > pangkalan data > SQL > Perkara utama untuk jadual pengalian dalam pertanyaan SQL (perkongsian ringkasan)

Perkara utama untuk jadual pengalian dalam pertanyaan SQL (perkongsian ringkasan)

WBOY
Lepaskan: 2022-09-07 14:15:23
ke hadapan
5573 orang telah melayarinya

Artikel ini membawakan anda pengetahuan yang berkaitan tentang pelayan SQL Dengan menggunakan SQL, anda boleh menentukan alias untuk nama jadual atau nama lajur Perkara berikut memperkenalkan perkara utama bagi jadual alias dengan pertanyaan SQL ( Maklumat berkaitan yang melibatkan pertanyaan bersarang), saya harap ia akan membantu semua orang.

Perkara utama untuk jadual pengalian dalam pertanyaan SQL (perkongsian ringkasan)

Kajian yang disyorkan: "Tutorial SQL"

Anda boleh alias jadual melalui ruang atau sebagai

Tetapi Ambil perhatian bahawa jika pangkalan data operasi ialah Oracle, hanya ruang boleh digunakan, kerana tidak mematuhi sintaks Oracle.

Contohnya

Menggunakan alias dalam pertanyaan mudah

select *
from student s
where s.id = '10';
Salin selepas log masuk

Menggunakan alias dalam pertanyaan mudah secara amnya tidak memerlukan perhatian khusus dan memerlukan operasi yang kurang

Menggunakan alias dalam pertanyaan kompleks

Ringkasan soalan: Terdapat tiga jadual, pelajar (sno, sname, ssex, hari jadi, kelas)

skor (sno, cno, degree)

course(cno,cname,tno)

Soal rekod semua pelajar yang mengambil kursus elektif "3-105" dan gred mereka lebih tinggi daripada "109".

Jawapan:

select *
 from (select s.sno,s.sname,s.ssex,s.sbirthday,s.class,    sc.degree,c.cno,c.cname,c.tno from student s , course c ,score sc where s.sno = sc.sno and c.cno = sc.cno) ss
 where  ss.cno = '3-105' and ss.degree >( select degree from score where sno = '109' and cno = '3-105');
Salin selepas log masuk

Seperti yang anda lihat, untuk memudahkan operasi, kami telah mentakrifkan semula jadual ss Jadual ini adalah jadual besar yang turut mengandungi kandungan tiga di atas meja . Tetapi sila beri perhatian kepada perkara berikut, jika tidak, mudah untuk membuat kesilapan

Apabila anda ingin memaparkan semua nilai jadual yang baru ditakrifkan, anda tidak boleh menggunakan *

secara langsung. Sebagai contoh, jika anda menukar jawapan yang diisytiharkan kepada

select *
 from (select * from student s , course c ,score sc where s.sno = sc.sno and c.cno = sc.cno) ss
 where  ss.cno = '3-105' and ss.degree >( select degree from score where sno = '109' and cno = '3-105');
Salin selepas log masuk

Baris arahan akan menunjukkan bahawa lajur tidak ditakrifkan dengan jelas, kerana kami ingin menentukan lajur sekarang sebagai jadual baharu, tetapi nama lajur beberapa lajur diduakan, dan kita perlu menentukan salah satu daripadanya.

Jadual yang baru dibuat tidak boleh digunakan dalam pernyataan pertanyaan bersarang, kerana kod dalam pertanyaan bersarang ialah bahagian pelaksanaan yang lengkap dan akan dijalankan dari awal? Bagaimanapun, ralat akan dilaporkan apabila memanggilnya

select *
 from (select * from student s , course c ,score sc where s.sno = sc.sno and c.cno = sc.cno) ss
 where  ss.cno = '3-105' and ss.degree >( select degree from ss where sno = '109' and cno = '3-105');
Salin selepas log masuk

Subkueri di mana dalam SQL ini menggunakan jadual baharu ss, dan kompilasi akan menunjukkan bahawa tiada ralat dalam jadual atau paparan.

Kajian yang disyorkan: "Tutorial SQL"

Atas ialah kandungan terperinci Perkara utama untuk jadual pengalian dalam pertanyaan SQL (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sql
sumber:jb51.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan