Rumah >pangkalan data >tutorial mysql >Bagaimana saya boleh meniru fungsi row_number () SQL Server di mysql?
simulasi row_number SQL Server () dalam mysql
fungsi SQL Server tidak mempunyai setara langsung dalam versi MySQL yang lebih lama (sebelum 8.0). Ini mewujudkan keperluan untuk penyelesaian. ROW_NUMBER()
<code class="language-sql">SELECT t.*, @rownum := @rownum + 1 AS rank FROM YOUR_TABLE t, (SELECT @rownum := 0) r;</code>Kaedah ini, bagaimanapun, jatuh pendek apabila pembahagian diperlukan (pengelompokan oleh beberapa lajur). Peningkatan pembolehubah mudah tidak diset semula dengan sewajarnya merentasi partition yang berbeza. Manipulasi pembolehubah yang lebih kompleks dan logik bersyarat diperlukan untuk meniru tingkah laku partition
. ROW_NUMBER()
, menghapuskan keperluan untuk penyelesaian ini. Sekiranya boleh, menaik taraf ke versi MySQL yang lebih baru adalah penyelesaian yang disyorkan.
Atas ialah kandungan terperinci Bagaimana saya boleh meniru fungsi row_number () SQL Server di mysql?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!