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

SQL SELECTステートメントおよびPDOでの以上(> =)および以下(<=)の使用

    ロジックを少し調整してみてください。成歩堂龍一と同じように、問題を解決するために物事をひっくり返す必要がある場合もあります。

    $pk = $db->prepare("SELECT `grade` FROM `grading` WHERE ? BETWEEN `min` and `max`");
    $pk->execute(array($mark));
    $ind = $pk->fetch(PDO::FETCH_ASSOC);
    echo $ind['grade'];
    

    BETWEENの最初のオペランドとして値を使用する およびIN 多くの人が考えるようなものではありませんが、それでも非常に強力です;)

    さらに重要なことに(そして、誤って私が気付くのを手伝ってくれたFred -ii-に感謝します)、min およびmax 関数名です。それらを列名として使用する場合は、必須 上記のコードで行ったように、バックティックでラップします。

    原則として、常に テーブル名と列名の周りにバッククォートを配置します。そうしないことは、$foo = bar;を書くことに似ています。 PHPで。確かに、それは動作します 、ただしbarの場合 たまたま定数または関数名であると、すべての地獄が解き放たれます。




    1. テーブルベースのレコードデータ型を持つ強力な参照カーソル

    2. CLEAR SCREEN-Oracle SQL Developerのショートカット?

    3. 句ごとに2つの列の合計を計算します-laravel

    4. MacOSX上のOracle11g