mysql 没有top的用法。取而代之的是limit
语法为:limit m,n
省略n就可以得到你要的效果了。
select * from table1 limit 10
SELECT * FROM category LIMIT 3, 5
LIMIT 3, 5 这一句是关键3代表第几条数据之后开始,5代表差出几条结束(这里以mysql中的category表)
显示10条:
SELECT * FROM category LIMIT 0,10
或者
SELECT * FROM category LIMIT 10
SELECT * FROM 表 LIMIT 0, 10
参数必须是一个整数常量
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量
第二个参数指定返回记录行的最大数目
初始记录行的偏移量是 0(而不是1
扩展资料:
mysql中的一些命令
1、显示数据库列表
show databases
刚开始时才两个数据库:mysql 和 test。mysql 库很重要它里面有 MySQL 的系统信息,我们改密码和新增用户,实际上就是用这个库进行 *** 作
2、显示库中的数据表
use mysql; //打开库
show tables
3、显示数据表的结构
describe 表名
4、建库
create database 库名
参考资料来源:百度百科-mySQL (关系型数据库管理系统)
问题,我想好多朋友也会碰到,下面我简单的说下我遇到的情况,且解决方法,希望对好多朋友有许多帮助:下面是我数据库test中表student的数据,其中第二条记录被我删除了
在查询分析器中输入select*fromstudentlimit5即可查询到下图的情况:
所以说,在Mysql中取出表中前几条记录是用关键字 limit,而在Sql-server中则是用top关键字,
但是Mysql子查询却不支持
limit ,也就是说,如:select*fromuserswhereidnotin(selectidfromuserslimit3)and1limit3是有语法错误的,
/* SQL Error (1235): This version of MySQL doesn't yet support 'LIMIT &IN/ALL/ANY/SOME subquery' */
看下图显示:
但是看看下面,用两层嵌套的方法,居然可以select*fromstudentwhereidnotin(selectt.idfrom(select*fromstudentlimit7)ast)
太雷人了吧,呵呵
其实我也不知道啥回事,先记着呗!
下面是的方法记含义:select*fromstudentlimit5//取出前五条记录select*fromstudentlimit0,5//取出前五条记录select*fromstudentlimit3,10//取出3后面的10条记录,
不包括3select*fromstudentorderbyrand()limit2//从表中随机取出2条记录,这里2可以自己改
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)