Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengapa UNION ALL dengan dan tanpa tanda kurung berperilaku berbeda?

Itu karena Anda menggunakan LIMIT.

Referensi MySql mengatakan bahwa jika Anda ingin menggunakan ORDER BY atau LIMIT pada pilihan individual, maka Anda harus mengapit pilihan Anda dengan tanda kurung.

Contoh (Dari referensi MySQL):

Untuk menerapkan ORDER BY atau LIMIT ke SELECT individu, tempatkan klausa di dalam tanda kurung yang mengapit SELECT:

(SELECT a FROM t1 WHERE a=10 AND B=1 ORDER BY a LIMIT 10)
UNION
(SELECT a FROM t2 WHERE a=11 AND B=2 ORDER BY a LIMIT 10);

Sumber daya dapat ditemukan di sini:http://dev.mysql.com /doc/refman/5.0/en/union.html

EDIT: Mengubah tautan referensi karena yang sebelumnya untuk versi 5.5 . Tapi jawabannya tidak berubah.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysql membuat database dengan lokasi database baru

  2. Ambil data dari mysql dan tampilkan dalam bentuk tabel teks ascii di browser

  3. Perhitungan MySQL dalam pernyataan pilih

  4. Praktik terbaik untuk sistem Janji Temu/Pemesanan PHP/MySQL

  5. objek django+mysql='DatabaseWrapper' tidak memiliki atribut 'Database' error