Как вернуть данные, содержащие пустую строку вместо NULL в laravel - PullRequest
0 голосов
/ 14 февраля 2020

Я хочу получить мои данные из базы данных, где одним из моих атрибутов была пустая строка вместо нуля .... но мой код возвращает все данные, где объединены NULL и пустая строка ... вот мой код

public function findAllPersons2(){
        return $this->where('pi_person_type','3')
                     ->where('pi_vendor_id','!=' , '')
                    ->orderBy('pi_name', 'asc')
                    ->get();
    }

Ответы [ 3 ]

1 голос
/ 14 февраля 2020

Попробуйте, как показано ниже.

$this->where('pi_person_type','3')
                     ->where(function($q){
                         $q->whereNull('pi_vendor_id')->orwhere('pi_vendor_id','');
                     })

                    ->orderBy('pi_name', 'asc')
                    ->get();
1 голос
/ 14 февраля 2020

Этот код также будет работать:

->where('pi_vendor_id', '')

Для удобства, если вы хотите убедиться, что столбец равен заданному значению, вы можете передать значение непосредственно в качестве второго аргумента метод where.

https://laravel.com/docs/6.x/queries#where -классы

1 голос
/ 14 февраля 2020

Ваш код использует условие не равно пустой строке. Чтобы найти всех людей, у которых значение pi_vendor_id пусто, выполните следующее условие:

->where('pi_vendor_id', '=', '')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...