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

rumus matematika tersimpan mysql/oracle

Saya pikir apa yang Anda katakan adalah Anda ingin database mengurai string rumus. Misalnya, untuk Oracle Anda dapat

  • Tambahkan kolom ke tabel untuk memuat hasil
  • Jalankan pernyataan pembaruan yang akan memanggil fungsi PL/SQL dengan nilai kolom dalam tabel dan teks rumus

    perbarui {table} set formula_result =fn_calc_result (col1, col2, formula_column);

Fungsi PL/SQL akan membuat string dengan mengganti "col1" dan "col2" dan seterusnya dengan nilai sebenarnya dari kolom tersebut. Anda dapat melakukannya dengan ekspresi reguler, selama rumus ditulis secara konsisten.

Kemudian gunakan

execute immediate 'select '||{formula}||' from dual' into v_return;
return v_return;

untuk menghitung hasilnya dan mengembalikannya.

Tentu saja, Anda juga bisa menulis parser Anda sendiri. Jika Anda memutuskan untuk pergi ke sana, jangan lupa untuk menangani prioritas operasi, tanda kurung, dan sebagainya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Keterkaitan antara teks dan daftar kata kunci?

  2. PHP mengambil data dari baris tabel dan menyimpannya ke variabel

  3. Bisakah saya menyimpan gambar di MySQL

  4. Apakah indeks majemuk memiliki arah di MySQL?

  5. MySQL:Bagaimana menemukan daun di node tertentu