как написать CakePHP и и или или запрос

0
 $tmp_sales    = $this->tmp_sale->find('all', array(
                'conditions' => array(
                    array(
                        'no' => $no,
                        'barcode' => $barcode,'employee' => $emp, 'store' => $store_name
                    )
                )
            ));

Это мой текущий запрос.

select * from tmp_sale where  no = '$no' and 
                       'employee' ='$emp' and  store = '$store_name' and ( barcode='$barcode' or name='$barcode')

Я хочу сделать изменения, как указано выше. как написать такой запрос в cakephp

  • 1
    Прочитайте руководство, оно объяснено там, включая примеры: book.cakephp.org/2.0/en/models/…
Теги:
cakephp
cakephp-2.0
cakephp-1.3
cakephp-2.3

2 ответа

1
'conditions' => array(
    'no' => $no,
    'employee' => $emp,
    'store '=> $store_name,
    'OR' => array(
        array('barcode' => $barcode),
        array('name' => $barcode)
    )
)
-1

Название модели tmp_sale должно быть Singular, tmp_sale Название модели должно быть заменено именем TmpSale. Запрос cakephp показан ниже. Вы должны попробовать это

 $tmp_sales = $this->TmpSale->find('all', array(
            'conditions' => array( 'no' => $no,
                    'employee' => $emp,
                    'store '=>$store_name,
                    'or'=>array('barcode'=>$barcode,
                        'name'=>$barcode)

            )
        ));

благодаря

  • 1
    Эй приятель, вам не нужно 2 массивов в условиях первого достаточно. 'conditions' => array(array(..... должен быть преобразован в 'conditions' => array(....)
  • 0
    Этот запрос работает правильно, если у вас есть запрос, вы просто отвечаете,
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню