2
SELECT field1, field2
FROM table1
JOIN table2 ON (table2.field1=table1.field1 OR table2.field2=table1.field2)

CodeIgniter でこのクエリを記述する方法は? JOIN 条件に括弧が必要です。

CodeIgniter サンプル

$this->db->select("field1,field2")
$this->db->from("table1")
$this->db->join("table2","(table2.field1=table1.field1 or table2.field2=table1.field2)")

しかし、これはエラーを生成します。

4

1 に答える 1

-1

query() 関数を使用して、通常の SQL を記述します。

このような:

$this->db->query(
   'SELECT field1, field2 
    FROM table1
    JOIN table2 
        ON table2.field1=table1.field1 
        OR table2.field2=table1.field2');

はるかに読みやすくなります。大規模なアプリケーションでは、専門家がすべてのクエリをチェックするか、CI プログラマーがチェックしないことがよくありますが、これはアクティブ レコード表記を使用する場合には不可能です。

その後、抽象化とチーム間のアクセシビリティを向上させるために、クエリを個別のファイルに入れることもできます。

括弧は不要です。

于 2012-08-11T09:43:33.917 に答える