master
lion 6 days ago
parent 3f47b8b537
commit 98c70d126d

@ -0,0 +1,44 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Support\Facades\DB;
/**
* 一次性数据修正:导入后排序颠倒时,将 sort 在 1101 之间的记录按 1↔101、2↔100 … 对调。
* 公式:新 sort = 102 - 原 sort仅作用于 1 ≤ sort ≤ 101
*/
return new class extends Migration
{
public function up(): void
{
$driver = DB::getDriverName();
if ($driver === 'mysql') {
DB::update(
'UPDATE `venues` SET `sort` = 102 - `sort` WHERE `sort` >= 1 AND `sort` <= 101'
);
return;
}
if ($driver === 'pgsql') {
DB::update(
'UPDATE venues SET sort = 102 - sort WHERE sort >= 1 AND sort <= 101'
);
return;
}
if ($driver === 'sqlite') {
DB::update(
'UPDATE venues SET sort = 102 - sort WHERE sort >= 1 AND sort <= 101'
);
}
}
public function down(): void
{
// 再执行一次相同变换即可还原(对称)
$this->up();
}
};
Loading…
Cancel
Save