0

Oracle データベースで SQL 関数を開発しました。

     create or replace function test (var in number) リターン番号は
     始める
     888 を返します。
     終わり;
     /

SQL では、この関数を次のように呼び出すことができます。


    デュアルからの res として test(1) を選択します。

symfony2.0 doctrine 2.2 で SQL 関数を正しく呼び出すにはどうすればよいですか? 私はこれで試しました:

        $query = $this->createQueryBuilder('DUAL')->select("FUNCTION('test1',1) as res");
        die(var_dump($query->getQuery()->getResult()));

動作しますが、応答する行が多すぎて、理由がわかりません:

    配列(15) { [0] => 配列(1) { 'res' => 文字列(3) "888" } [1] => 配列(1) { 'res' => 文字列(3) "888" } [2] => 配列(1) { 'res' => 文字列(3) "888" } [3] => 配列(1) { 'res' => 文字列(3) "888" } [4] => 配列(1) { 'res' => 文字列(3) "888" } [5] => 配列(1) { 'res' => 文字列(3) "888" } [6] => 配列( 1) { 'res' => 文字列(3) "888" } [7] => 配列(1) { 'res' => 文字列(3) "888" } [8] => 配列(1) { ' res' => string(3) "888" } [9] => array(1) { 'res' => string(3) "888" } [10] => array(1) { 'res' =>文字列(3) "888" } [11] => 配列(1) { 'res' => 文字列(3) "888" } [12] =>配列(1) { 'res' => 文字列(3) "888" } [13] => 配列(1) { 'res' => 文字列(3) "888" } [14] => 配列(1) { 'res' => 文字列(3) "888" } }

4

1 に答える 1

1

カスタム DQL 関数を Symfony に追加する方法については、対応する記事を確認してください。

http://symfony.com/doc/current/cookbook/doctrine/custom_dql_functions.html

http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/dql-user-defined-functions.html

于 2013-07-15T10:27:59.993 に答える