有没有办法将以下查询重写为1个查询?
<head>
提前致谢。
答案 0 :(得分:0)
您可以将它们组合在一个MySQL查询中(如果您正在使用MySQL),如下所示:
UPDATE template_table
SET default = CASE
WHEN id = $id THEN 1
WHEN id <> $id THEN 0
ELSE default = default
END
然后您可以使用DB :: raw()将原始查询发送到数据库。
答案 1 :(得分:0)
DB::statement("
UPDATE templates
SET default =
CASE
WHEN id = ? THEN 1
ELSE 0
END
", [$id]);
没有其他(Eloquent)方式