Rumah > pangkalan data > tutorial mysql > Mengapa Fungsi SQL CONCAT Saya Mengembalikan Ralat 'Bilangan Argumen Tidak Sah'?

Mengapa Fungsi SQL CONCAT Saya Mengembalikan Ralat 'Bilangan Argumen Tidak Sah'?

Barbara Streisand
Lepaskan: 2024-12-23 16:37:10
asal
506 orang telah melayarinya

Why Does My SQL CONCAT Function Return an

Menyelesaikan masalah Fungsi CONCAT: Bilangan Argumen Tidak Sah

Dalam SQL, fungsi CONCAT digunakan untuk menggabungkan berbilang rentetan menjadi satu rentetan. Walau bagaimanapun, penggunaannya secara tidak wajar boleh menyebabkan ralat seperti "bilangan argumen tidak sah."

Pertimbangkan senario berikut: anda mempunyai jadual dengan dua lajur, "Nama" dan "Pekerjaan," dan anda ingin mengeluarkan nilai dalam format tertentu dengan huruf pertama pekerjaan dalam kurungan.

Pendekatan awal anda ialah:

SELECT CONCAT(Name,SUBSTR(Occupation,1,1)) FROM OCCUPATIONS;
Salin selepas log masuk

Ini menggabungkan nama dan huruf pertama pekerjaan dengan betul. Walau bagaimanapun, apabila anda cuba menambah kurungan di sekelilingnya dengan:

SELECT CONCAT(Name,"(",SUBSTR(Occupation,1,1),")") FROM OCCUPATIONS;
Salin selepas log masuk

Anda mengalami ralat "bilangan argumen tidak sah." Ini kerana CONCAT hanya boleh mengambil dua hujah, bukan empat.

Untuk membetulkannya, anda boleh menggunakan operator penggabungan || bukannya berbilang fungsi CONCAT:

SELECT Name || '(' || SUBSTR(Occupation,1,1) || ')' FROM OCCUPATIONS;
Salin selepas log masuk

Ini menggabungkan nama, kurungan pembukaan, huruf pertama pekerjaan dan kurungan penutup dengan betul ke dalam format yang diingini.

Selain itu, anda perlu melampirkan rentetan dalam petikan tunggal (') dan bukannya petikan berganda (") apabila menggunakannya sebagai parameter untuk fungsi seperti SUBSTR. Petikan berganda digunakan untuk mengenal pasti pengecam (cth., nama jadual atau nama lajur).

Atas ialah kandungan terperinci Mengapa Fungsi SQL CONCAT Saya Mengembalikan Ralat 'Bilangan Argumen Tidak Sah'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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