teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/08/06 00:49

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,4 +1,16 @@
1
1
  > ** limit 30012**
2
2
  > この時に取得するデータ個数を30000にしたい
3
3
 
4
- **limit 30000**と記述すれば良いと思うのですが?
4
+ **limit 30000**と記述すれば良いと思うのですが?
5
+
6
+ 追記
7
+ --
8
+ floor()を使用しているところからMySQLだと思いますが、そもそもMySQLのlimitは定数でないとエラーです。
9
+ [13.2.9 SELECT 構文](https://dev.mysql.com/doc/refman/5.6/ja/select.html)
10
+ > LIMIT は 1 つまたは 2 つの数値引数を受け取ります。これは、どちらも**負ではない整定数**である必要があります。ただし、次の例外があります。
11
+ >
12
+ > ・準備済みステートメント内では、? プレースホルダマーカーを使用して LIMIT パラメータを指定できます。
13
+ >
14
+ > ・ストアドプログラム内では、整数値のルーチンパラメータまたはローカル変数を使用して LIMIT パラメータを指定できます。
15
+
16
+ 例外も含めると、limitで指定するのは、**定数**か**変数**という事になりますから、切り捨てを行うのはSQLの外でという事になります。