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

Mendapatkan catatan terakhir dari mysql

Hampir selesai. Anda berhasil mendapatkan insert order. Jadi:

select myId, @rowid:[email protected]+1 as myrow from maxID, (SELECT @rowid:=0) as init ORDER BY myrow desc LIMIT 1;

Di konsol saya, saya mendapatkan yang berikut:

mysql> select myId, @rowid:[email protected]+1 as myrow from maxID, (SELECT @rowid:=0) as
init ORDER BY myrow desc LIMIT 1;
+------+-------+
| myId | myrow |
+------+-------+
| A003 |     4 |
+------+-------+
1 row in set (0.00 sec)

Demo

PERBARUI

Yak benar. Solusi saya tidak deterministik. Mungkin itu berfungsi untuk sejumlah kecil catatan. Saya menemukan banyak posting tentang tidak dapat diandalkannya penyortiran default dari pernyataan SELECT (di sini misalnya ).Langkah selanjutnya:

  • Dalam kondisi apa pengurutan SELECT default cocok dengan urutan penyisipan?
  • Apakah mungkin untuk mendapatkan catatan yang terakhir disisipkan dalam tabel tanpa id tambahan atau stempel waktu penyisipan?

Saya tahu ini bukan jawaban, tetapi menyatakan masalah membatasi masalah.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tabel pivot MySQL - baris ke kolom . Pertanyaan

  2. Perbarui beberapa baris dengan beberapa klausa 'di mana' untuk setiap baris individu

  3. Mereplikasi GROUP_CONCAT untuk pandas.DataFrame

  4. Dapatkan hasil dari mysql berdasarkan garis bujur

  5. mysql GROUP_CONCAT BERBEDA beberapa kolom