1and$b需要两个条件都成立
1or$b因为已经判断前面是1成立了,后面的就不判断了
0or$b前面是o不成立,所以继续判断$b是否成立。

解决方案 »

  1.   

    谢谢楼上的回复,我再请教一下:
    这里的and (1或and (0是指$a的运算结果吗?有网友说不是,这是辅助条件,不是任何运算的结果值,我都看糊涂了,不知道正确答案是什么。还有,上面说的当条件为OR时加0才不会影响结果集是不是就是说:
    1or$b因为已经判断前面是1成立了,后面的就不判断了因为前面是1,所以就不会判断后面的条件了,所以就影响到后面的结果集,是这个意思吗?还望再予指点一下,谢谢。
      

  2.   

    要加的,不加就会出现错误,请看如下查询语句:
    $sql = "SELECT g.goods_id, g.goods_name, g.et_price, g.shop_price, g.promote_price,".
    " g.promote_start, g.promote_end, g.goods_thumb, g.goods_img, g.goods_brief ".
    " FROM " .$ecs->table('goods'). " AS g".
    " WHERE g.is_delete = 0 AND g.is_alone_sale = 1".
    " AND ( 1 " . $categories . $keywords . $brand . $min_price . $max_price . $intro ." ) ".$tag_where.
    " ORDER BY $sort $order";如果这里不写上AND ( 1(即去掉1,那运行时就会出错,我测试过多次的确必须要写。
      

  3.   

    $categories . $keywords . $brand . $min_price . $max_price . $intro 
    你是说这些有可能会空是吧?$sql = "SELECT g.goods_id, g.goods_name, g.et_price, g.shop_price, g.promote_price,".
    " g.promote_start, g.promote_end, g.goods_thumb, g.goods_img, g.goods_brief ".
    " FROM " .$ecs->table('goods'). " AS g".
    " WHERE g.is_delete = 0 AND g.is_alone_sale = 1 " . $categories . $keywords . $brand . $min_price . $max_price . $intro ." ) ".$tag_where.
    " ORDER BY $sort $order";
    这样不行?
      

  4.   

    $sql = "SELECT g.goods_id, g.goods_name, g.et_price, g.shop_price, g.promote_price,".
    " g.promote_start, g.promote_end, g.goods_thumb, g.goods_img, g.goods_brief ".
    " FROM " .$ecs->table('goods'). " AS g".
    " WHERE g.is_delete = 0 AND g.is_alone_sale = 1 " . $categories . $keywords . $brand . $min_price . $max_price . $intro ." ) ".$tag_where.
    " ORDER BY $sort $order";这样错误的!
      

  5.   

    你的$categories . $keywords . $brand . $min_price . $max_price . $intro是什么东西啊?
    $sql = "SELECT g.goods_id, g.goods_name, g.et_price, g.shop_price, g.promote_price,".
    " g.promote_start, g.promote_end, g.goods_thumb, g.goods_img, g.goods_brief ".
    " FROM " .$ecs->table('goods'). " AS g".
    " WHERE g.is_delete = 0 AND g.is_alone_sale = 1 " . $categories . $keywords . $brand . $min_price . $max_price . $intro .$tag_where.
    " ORDER BY $sort $order";