0

Symfony 1.4/Propel 1.4 に既存のプロジェクトがあります

データベースの最適化のために、いくつかのテーブルのビューを作成しました。関数/ビュー クエリは次のとおりです。

create function getPlayer() returns INTEGER DETERMINISTIC NO SQL return @getPlayer;

create view getPlay as
SELECT
    CASE WHEN play.hiderid = getPlayer() THEN play.seekerid ELSE play.hiderid END AS opponent, play . * 
    FROM odd_play play, odd_match mat
    WHERE (seekerid = getPlayer() OR hiderid = getPlayer())
    AND play.id = mat.latestplay;

上記のビューを作成した後、次の簡単な SQL クエリを記述して、必要なデータを効果的に取得できます。

select play.*
from (select @getPlayer:=1 p) p, getPlay play;

問題は、このクエリを Symfony/Propel 1.4 でどのように記述するかということです。誰かが prop1.4 でそのクエリを書く方法を提案できますか?

J0Kコメントの後に編集

私はフォローしようとしています

class GetplayPeer extends BaseGetplayPeer {
    static public function getOpponents($player){
        $con = Propel::getConnection();
        $sql = "select play.* from (select @getPlayer:=:player p) ply, getPlay play;";
        $stmt = $con->prepare($sql);
        $stmt->bindParam(":player",&$player,PDO::PARAM_INT);
        $rs = $stmt->execute();
        //$opponents = GetplayPeer::populateObjects($rs);
        echo "opponents=<pre>";print_r($rs);exit;
    }
} // GetplayPeer

出力として取得1していますが、これは期待される出力ではありません。

4

0 に答える 0