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

Pernyataan Kasus di ARel

Saya rasa dari Arel v7.x memperkenalkan Arel::Nodes::Case yang dapat digunakan untuk pernyataan kasus. Anda dapat menulis ulang kueri ini sebagai:

def case_statements
  orders = Order.arel_table
  Arel::Nodes::Case.
  new(orders[:quantity]).
  when(2).then(orders[:quantity] * 500).
  when(5).then(orders[:quantity] * 450).
  when(10).then(orders[:quantity] * 350)
end
orders = Order.arel_table

Order.
select(Arel.star).
select(Arel::Nodes::Sum.new(case_statements).as("total_price")).
group(orders[:user_id]).
having("total_price > ?", minimum_price).
order("total_price")



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan Keyerror 255 saat menjalankan pymysql.connect

  2. MySql Pilih Dimana dan C#

  3. larik php dari mysql

  4. Kesalahan WAMP/MySQL tidak dalam bahasa yang benar

  5. Cara mengubah warna garis secara dinamis berdasarkan nilai yang lebih rendah dari sebelumnya di grafik tinggi