如何使用Laravel Eloquent在WHERE条件中减去2列

时间:2016-04-28 08:42:38

标签: php laravel eloquent

@valid_attrs [%{first_name: "some content", last_name: "some content"},
              %{first_name: "some content"},
              %{last_name: "some content"}]

test "changeset with valid attributes" do
  for valid_attrs <- @valid_attrs do
    changeset = User.changeset(%User{}, valid_attrs)
    assert changeset.valid?
  end
end

我需要像

这样的东西
Trjual_h::where('Kd_Pelanggan', '=', $get)
        ->where('Nilai_Faktur', '-', 'Nilai_Bayar', '>=', '0')
        ->select('Nilai_Faktur', 'Tgl_Faktur', 'Lama_Piutang', 'No_Faktur', 'Nilai_Bayar')
        ->get();

但是当我运行查询并在我的表中显示所有可用数据时,它一直忽略这两个条件。已经尝试使用Select Nilai_Faktur, Tgl_Faktur, Lama_Piutang, No_Faktur, Nilai_Bayar where (Kd_Pelanggan = XXX11) AND (Nilai_Faktur - Nilai_Bayar > 0) ,但它一直给我一个错误。

1 个答案:

答案 0 :(得分:1)

Trjual_h::where('Kd_Pelanggan', $get)
        ->whereRaw('Nilai_Faktur-Nilai_Bayar > 0')
        ->select('Nilai_Faktur','Tgl_Faktur','Lama_Piutang','No_Faktur','Nilai_Bayar')
        ->get();

只是注意,我从'='删除了where('Kd_Pelanggan', $get),因为它只是做一个等于所需的参数所以我总是删除它。但是,两种方式都有效。