我需要对此查询进行限制。但它不会以这种方式工作。我对sql不是很熟悉,所以我不知道该怎么做。
select profile.profiles_profile_id, profile.uuid, profile.formatted_name, user.email, setting.wantProfile
from profiles_settings as setting
left join profiles_profiles as profile on profile.profiles_profile_id = setting.profiles_profile_id
left join users as user on user.users_user_id = setting.profiles_profile_id limit 20;
答案 0 :(得分:2)
请阅读手册......
LIMIT子句可用于约束SELECT语句返回的行数。 LIMIT需要一个或两个数字参数,它们都必须是非负整数常量,但有以下例外:
在预准备语句中,可以使用?指定LIMIT参数?占位符标记。
在存储的程序中,LIMIT参数可以使用整数值例程参数或MySQL 5.5.6中的局部变量来指定。
使用两个参数,第一个参数指定要返回的第一行的偏移量,第二个参数指定要返回的最大行数。初始行的偏移量为0(不是1):
SELECT * FROM tbl LIMIT 5,10; # Retrieve rows 6-15
要从特定偏移量检索所有行直到结果集的末尾,可以使用一些大数字作为第二个参数。此语句检索从第96行到最后一行的所有行:
SELECT * FROM tbl LIMIT 95,18446744073709551615;
使用一个参数,该值指定从结果集开头返回的行数:
SELECT * FROM tbl LIMIT 5; # Retrieve first 5 rows
换句话说,LIMIT row_count相当于LIMIT 0,row_count。