Doubt Laravel SQL Queries?

2

I'm starting with SQL of Laravel I looked a lot more I did not get a response of how to AND after where , follow sample code to implement AND .

SQL:

UPDATE contas
SET valor_titulo = 0,
WHERE id_contrato = 2 
AND data_vencimento = '2017-05-05'

How I'm doing in Laravel:

DB::table('contas')
        ->where('id_contrato', $options['id_contrato'])
        ->update(['valor_titulo' => $attributes['valor_titulo']);

How do I put a AND in this structure?

    
asked by anonymous 22.03.2017 / 20:41

1 answer

2

You can do this:

DB::table('contas')
    ->where('id_contrato', $options['id_contrato'])
    ->where('data_vencimento', $options['data_vencimento'])
    ->update(['valor_titulo' => $attributes['valor_titulo']);

or so:

DB::table('contas')
    ->where([
        ['id_contrato','=', $options['id_contrato']],
        ['data_vencimento','=', $options['data_vencimento']],
     ])
    ->update(['valor_titulo' => $attributes['valor_titulo']);

or even so:

DB::table('contas')
    ->where(function($query) use ($options){
            $query->where('id_contrato',$options['id_contrato'])
                  ->where('data_vencimento',$options['data_vencimento']);
      })
    ->update(['valor_titulo' => $attributes['valor_titulo']);

References:

22.03.2017 / 21:01