Apabila cuba melaksanakan pertanyaan yang melibatkan subquery dalam kurungan dalam klausa FROM, adalah penting untuk memastikan bahawa alias diberikan kepada subkueri. Keperluan ini ditemui apabila menggunakan PostgreSQL, seperti yang ditunjukkan oleh mesej ralat:
ERROR: subquery in FROM must have an alias
Untuk membetulkan isu ini, cuma tambahkan alias pada subkueri, pastikan ia diletakkan selepas kurungan penutup. Berikut ialah versi diperbetulkan bagi pertanyaan yang disediakan:
SELECT COUNT(made_only_recharge) AS made_only_recharge FROM ( SELECT DISTINCT (identifiant) AS made_only_recharge FROM cdr_data WHERE CALLEDNUMBER = '0130' EXCEPT SELECT DISTINCT (identifiant) AS made_only_recharge FROM cdr_data WHERE CALLEDNUMBER != '0130' ) AS derivedTable -- Alias assignment
Dengan memasukkan pengubahsuaian ini, pertanyaan harus dilaksanakan tanpa ralat dalam PostgreSQL. Alias memberikan nama yang berbeza untuk subkueri, membolehkan pangkalan data membezakannya daripada elemen lain dalam pertanyaan. Ia merupakan aspek yang penting apabila menggunakan subkueri dalam klausa FROM pertanyaan PostgreSQL.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 'subquery dalam FROM mesti mempunyai alias' dalam PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!