sql >> データベース >  >> RDS >> Mysql

正規表現文字クラスを持つCDbCriteriaパラメーター

    PHPは、文字列内、つまり引用符内のプレースホルダーを置き換えません。のように:

    $criteria->addCondition('col = :app'); // param can be replaced
    $criteria->addCondition('col = ":app"'); // param can't be replaced
    

    したがって、mysqlの CONCAT() 次のように、文字列を自分で提供するのではなく、実際に正規表現の文字列を生成する関数:

    $criteria->addCondition('col regexp CONCAT("[[:<:]]", :app, "[[:>:]]")');
    

    または、正規表現全体をバインドします:

    $criteria->addCondition('col regexp :regexp');
    $criteria->params = array(':regexp'=>'[[:<:]]'.$app.'[[:>:]]');
    



    1. 2つの日付の間のデータを選択しますか?

    2. MySQL-スレッドごとに最新のトピックを表示する方法

    3. SQL Serverで外部キー制約を有効にする方法(T-SQLの例)

    4. PostgreSQLの階層合計