select left(sub.subjectdesignameno,2) as subjectdesignameno  from acc_vouchdetail vd 
left outer join acc_subjectdesigname sub  on vd.subjectdesigname_id = sub.subjectdesigname_id 這樣的結果是
subjectnameno
4但是我加上這樣的條件,居然連一條記錄都不顯示了,為什么
where subjectdesignameno = '4'

解决方案 »

  1.   

    WHERE 看不到SELECTSQL的执行顺序大概如下.先执行FROM,如果有JOIN.的话.再执行JOIN.然后再执行WHERE.然后再GROUP BY ,WITH等..然后才是SELECT所以..你SELECT left(sub.subjectdesignameno,2)得到的是4..
    那你在WHERE时.是看不到这个SELECT..所以你可以尝试 WHERE left(sub.subjectdesignameno,2)='4'
      

  2.   

    可以是可以了,不過我對你的“那你在WHERE时.是看不到这个SELECT..”這句話不明白