【发布时间】:2021-04-21 18:18:46
【问题描述】:
我是 laravel 新手,我无法将我的 sql 转换为 Laravel Query。
例子
INSERT INTO table(field1, field2) SELECT 'value1', 'value2' WHERE NOT EXISTS(SELECT 1 FROM tabla WHERE campo = 'search');
这是我的代码
INSERT INTO siryus.presupuesto_anio (id, fk_agencia_id, anyo, estado, created_at, updated_at) SELECT 30,4,2020, 'A', '2021-04-21 10:35:01','2021-04-21 10:35:01' WHERE NOT EXISTS(SELECT 1 FROM presupuesto_anio WHERE fk_agencia_id = '4');
我只想在没有具有该值的字段时插入。只有当select有值时才进行insert,只有满足WHERE时select才会返回数据。
在 WHERE 内部,我们有一个简单的 SELECT 来验证数据是否存在于表中。
我想把它转换成示例代码
DB::table('presupuesto_anio') ->join('agencia','presupuesto_anio.fk_agencia_id','agencia.id') ->select('presupuesto_anio.*','agencia.descripcion') ->get();
【问题讨论】:
-
您尝试过哪些查询构建器语句?