|
...
|
...
|
@@ -147,17 +147,20 @@ class lyhDemo extends Command |
|
|
|
->pluck('column_name')
|
|
|
|
->toArray();
|
|
|
|
|
|
|
|
// 字段更新
|
|
|
|
foreach ($columns as $field) {
|
|
|
|
$sqlField = "`$field`";
|
|
|
|
$updateExpr = $sqlField;
|
|
|
|
$lowerField = "LOWER($sqlField)";
|
|
|
|
$updateExpr = $lowerField;
|
|
|
|
|
|
|
|
foreach ($brands as $brand) {
|
|
|
|
$safeBrand = addslashes($brand);
|
|
|
|
$updateExpr = "REPLACE(REPLACE($updateExpr, '$safeBrand-', ''), '$safeBrand', '')";
|
|
|
|
$brandLower = strtolower(addslashes($brand));
|
|
|
|
$updateExpr = "REPLACE(REPLACE($updateExpr, '{$brandLower}-', ''), '{$brandLower}', '')";
|
|
|
|
}
|
|
|
|
// 替换后要保留原字段大小写格式,这里通过 CASE WHEN 判断是否替换,再更新原字段
|
|
|
|
$sql = "UPDATE `$table`
|
|
|
|
SET $sqlField = $updateExpr
|
|
|
|
WHERE $sqlField IS NOT NULL AND $sqlField != ''";
|
|
|
|
|
|
|
|
$sql = "UPDATE `$table` SET $sqlField = $updateExpr WHERE $sqlField IS NOT NULL AND $sqlField != ''";
|
|
|
|
echo "执行字段:$field" . PHP_EOL;
|
|
|
|
$connection->update($sql);
|
|
|
|
}
|
...
|
...
|
|