Joomla数据库如何做WHERE和OR

时间:2014-07-22 10:25:47

标签: mysql database joomla

我需要将以下mysql WHERE子句放入可与joomla数据库连接一起使用的表单中:

WHERE
hady9_session.session_id = 'acl7e1bn099rrlhkvsrhl13bu7' AND
(hady9_hikashop_product.product_parent_id = '5722' OR
'5412' OR
'5877' OR
'8357' OR
'8202')

到目前为止,我有:

->where('hady9_session.session_id = '. $db->quote($thesession));

如何将AND OR部分放入其中?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

这将有效...让我知道它是否无效。

->where($db->quoteName('hady9_session.session_id').' = '.$db->quote($thesession).'AND ('.$db->quoteName('hady9_hikashop_product.product_parent_id').' = '.$db->quote('5722').'OR'.$db->quote('5412').'OR'.$db->quote('5877').'OR'.$db->quote('8357').'OR'.$db->quote('8202').')');

答案 1 :(得分:1)

你可以这样做:

->where( $db->quoteName('hady9_session.session_id') . ' = ' . $db->quote($thesession) . 
        'AND' . $db->quoteName('hady9_hikashop_product.product_parent_id')  . ' = ' . $db->quote('5722') .
        'OR' . $db->quote('5412') .
        'OR' . $db->quote('5877') .
        'OR' . $db->quote('8357') .
        'OR' . $db->quote('8202')
       );

请注意,我还将数据库列包装在$db->quoteName()

希望这会有所帮助,让我知道它是否有效