MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Perbaiki "ERROR 1054 (42S22):Kolom tidak dikenal 'colname' di 'order clause' di MariaDB

Jika Anda mendapatkan kesalahan “ERROR 1054 (42S22):Kolom tidak dikenal 'colname' di 'order clause' ” di MariaDB, mungkin Anda mencoba mereferensikan kolom alias dengan nama kolomnya.

Ini adalah kesalahan umum saat menjalankan kueri yang menggabungkan dua tabel atau lebih. Itu juga bisa terjadi saat menggunakan operator seperti UNION , INTERSECT , dan EXCEPT .

Umumnya, jika kolom memiliki alias, maka Anda harus menggunakan alias itu di ORDER BY klausa yang mereferensikan kolom itu.

Untuk memperbaiki kesalahan, cukup rujuk kolom dengan aliasnya.

Atau, Anda dapat menghapus alias sama sekali dan merujuk nama kolom secara langsung.

Contoh Kesalahan

Berikut contoh kode yang menghasilkan kesalahan:

(SELECT TeacherName t FROM Teachers)
EXCEPT
(SELECT StudentName FROM Students)
ORDER BY TeacherName ASC;

Hasil:

ERROR 1054 (42S22): Unknown column 'TeacherName' in 'order clause'

Disini saya tidak menggunakan alias di ORDER BY klausa yang mengakibatkan kesalahan.

Solusi 1

Salah satu cara untuk memperbaiki masalah ini adalah dengan menggunakan alias di ORDER BY klausa:

(SELECT TeacherName t FROM Teachers)
EXCEPT
(SELECT StudentName FROM Students)
ORDER BY t ASC;

Hasil:

+-------+
| t     |
+-------+
| Ben   |
| Cathy |
+-------+

Dalam hal ini, alias menjadi tajuk kolom di hasil.

Solusi 2

Cara lain untuk melakukannya adalah dengan menghapus alias sama sekali:

(SELECT TeacherName FROM Teachers)
EXCEPT
(SELECT StudentName FROM Students)
ORDER BY TeacherName ASC;

Hasil:

+-------------+
| TeacherName |
+-------------+
| Ben         |
| Cathy       |
+-------------+

Kali ini nama kolom menjadi header kolom.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Penerapan Multi-Cloud untuk Replikasi MariaDB Menggunakan WireGuard

  2. Mengumumkan ClusterControl 1.7.4:Replikasi Cluster-to-Cluster - Pemulihan Bencana Utama

  3. MariaDB DAY() Dijelaskan

  4. MariaDB JSON_REMOVE() Dijelaskan

  5. Bagaimana SQRT() Bekerja di MariaDB