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

mysqlの保存された関数内のSELECTステートメントでOFFSETとして変数を使用する

    5.5より前のMySQLでは、変数をLIMITに入れることはできません。 MySQLストアドプロシージャの句。文字列に補間してから、動的クエリとして文字列を実行する必要があります。

    SET rand_offset = FLOOR(RAND() * (SELECT COUNT(*) FROM all_words));
    SET @sql = CONCAT('SELECT word INTO str_rnd_word FROM all_words LIMIT 1 OFFSET ', rand_offset);
    PREPARE stmt1 FROM @sql;
    EXECUTE stmt1;
    



    1. SQL Serverデータベースの復元(T-SQL)

    2. Phalconのパフォーマンス関連のクエリ

    3. MySQLコピーデータベース

    4. selectステートメントでのSQL内部結合