LIMIT句についてです。
php
1$page = filter_input(INPUT_GET, 'page'); 2$start = (int) $page * 5; 3$sql = sprintf("SELECT pref,city FROM user_data WHERE 1 ORDER BY id DESC LIMIT %d, 5", $start); 4$stmt = $pdo->prepare($sql); 5$stmt->execute(); 6 7var_dump($stmt);
【結果】
object(PDOStatement)#3 (1) { ["queryString"]=> string(68) "SELECT pref,city FROM user_data WHERE 1 ORDER BY id DESC LIMIT 10, 5" }
正常に動いてるのでいいのですが
LIMIT 取り出す位置,取り出す件数
の順で記述していくのに
LIMIT %d, 5", $start
ではなく
**LIMIT %d,$start, 5" **
にすると
LIMIT 取り出す位置,取り出す件数
のはずなのにエラーになってしまいます。
その原因と
LIMIT 取り出す位置,取り出す件数
の順で記述するはずなのに
LIMIT %d, 5", $start
で記述して結果が
DESC LIMIT 10, 5
になっている理由について教えてください。
LIMIT %d, 5", $start
なら
DESC LIMIT 5,10
になるはずだと思うのです。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2016/06/24 11:11
2016/06/24 11:14
2016/06/24 12:27
2016/06/24 13:39
2016/06/24 23:04