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

Urutan evaluasi pernyataan dan penetapan variabel di MySQL UNIONs

Jangan Gabungkan tugas @col dengan kueri Anda yang lain.

Miliki satu kueri untuk menetapkan nilai ke @col, dan kueri terpisah untuk menyertakan catatan itu dalam hasil Anda.

SELECT @col := col AS col    -- Fetch particular record given a value of
  FROM tbl                   -- "col", assigning the identifier to @col.
 WHERE col = 'd'



SELECT col                   -- Now include the above record in the
  FROM tbl                   -- Final result-set
WHERE col = @col

UNION ALL

SELECT col                   -- Fetch the immediately preceding record,
  FROM (  SELECT col         -- ordered by "col"
            FROM tbl
           WHERE col < @col
        ORDER BY col DESC
          LIMIT 1) preceding

UNION ALL

SELECT col                   -- Fetch the immediately following record,
  FROM (  SELECT col         -- ordered by "col"
            FROM tbl
           WHERE col > @col
        ORDER BY col ASC
          LIMIT 1) following
ORDER BY col ASC;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kinerja RegEx vs LIKE dalam kueri MySql

  2. Permintaan macet di ActiveRecord::QueryCache middleware

  3. Indeks komposit MySQL dan operator ANTARA

  4. Buat fungsi yang ditentukan pengguna yang berfungsi dengan GROUP BY di mysql

  5. MySQL- Server Wamp tidak berfungsi setelah peningkatan win10