
下面是我数据库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可以自己改
1、access支持sql语言;2、查询语句select的基本格式为select *|字段名表 from 数据源;
3、如果只显示前5条记录,则带top n子句,此处n为例5;
4、例如select top 5 * from 学籍,表示只查询学籍表的前5条记录。
将查询的结果:返回前5条是在 SELECT 到 FROM 之间 加TOP 5 其它和原语句一样比如:
例如一: SELECT TOP 5 *FROM 学生成绩表 这段语句表示查询学生成绩表的前5条记录(*是所有字段都出来)
例如二: SELECT TOP 5 FROM 学生成绩表 WHERE 语文成绩 >80 这段语句表示查询学生成绩表中语文成绩 在80分以上 的前5条记录(*是所有字段都出来)
例如三: SELECT TOP 5 姓名,语文成绩 FROM 学生成绩表 WHERE 语文成绩 >80 这段语句表示查询学生成绩表中语文成绩 在80分以上 的前5条记录(只显示姓名和语文成绩两个字段)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)