Rumah > pangkalan data > tutorial mysql > Mengapa MySQL Melemparkan Ralat 'Setiap Jadual Terbitan Mesti Mempunyai Alias ​​Sendiri'?

Mengapa MySQL Melemparkan Ralat 'Setiap Jadual Terbitan Mesti Mempunyai Alias ​​Sendiri'?

Barbara Streisand
Lepaskan: 2024-12-21 00:40:10
asal
651 orang telah melayarinya

Why Does MySQL Throw the

Memahami Ralat "Setiap Jadual Terbitan Mesti Mempunyai Alias ​​Sendiri" dalam MySQL

Apabila menjalankan pertanyaan yang melibatkan sub-pertanyaan bersarang, MySQL kadangkala melemparkan ralat yang menyatakan "Setiap jadual terbitan mesti mempunyai alias sendiri." Ralat ini memaklumkan anda tentang isu dengan struktur sub-pertanyaan.

Untuk membetulkan ralat ini, setiap sub-pertanyaan (atau jadual terbitan) mesti mempunyai alias unik. Alias ​​ini berfungsi sebagai pengecam, membenarkan pertanyaan luar merujuk hasil sub-pertanyaan.

Sebagai contoh, pertimbangkan pertanyaan berikut:

SELECT ID FROM (
    SELECT ID, msisdn
    FROM (
        SELECT * FROM TT2
    )
);
Salin selepas log masuk

Di sini, ralat berlaku kerana yang paling dalam sub-pertanyaan (yang memilih daripada TT2) tidak mempunyai alias. Untuk menyelesaikannya, tetapkan alias kepada sub-pertanyaan ini, seperti yang ditunjukkan di bawah:

SELECT ID FROM (
    SELECT ID, msisdn FROM (
        SELECT * FROM TT2
    ) AS T
) AS T
Salin selepas log masuk

Alias ​​"T" kini membenarkan pertanyaan luar merujuk kepada hasil sub-pertanyaan terdalam, dengan berkesan menghapuskan ralat .

Dalam banyak kes, pertanyaan boleh dipermudahkan dengan mengalih keluar sub-pertanyaan yang tidak perlu, seperti dalam ini contoh:

SELECT ID FROM TT2
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa MySQL Melemparkan Ralat 'Setiap Jadual Terbitan Mesti Mempunyai Alias ​​Sendiri'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan