4

Zend DB、Left Join SQL クエリが結合列に対して NULL を返すことを認識しています。これは本当ですか?

例えば:

$selectmatchedtime = $this->dbo->select()
            ->from(array('v'=>'table1'))
            ->joinLeft(array('vc'=>'table2'),'vc.vid = v.vid');

すべてのビデオに対してnullを返す...

4

1 に答える 1

2

問題はvid、クエリの列が 2 つのテーブルに属しているにもかかわらず、明らかに結果セットに 1 つの値しか格納できないことです。この問題を解決するには、エイリアスを作成して、使用するテーブルを明示的に指定します。

$selectmatchedtime = $this->dbo->select()
            ->from(array('v'=>'table1'))
            ->joinLeft(array('vc'=>'table2'),'vc.vid = v.vid')
            ->columns(array('vid'=>'v.vid'));
于 2013-06-14T06:49:31.923 に答える