重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
常用几种数据库,取前10条记录的sql语句写法。
创新互联是一家专注于网站建设、成都网站设计与策划设计,长岭网站建设哪家好?创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:长岭等地区。长岭做网站价格咨询:028-86922220
access:
select top (10) * from table1 where 1=1
db2:
select column from table where 1=1 fetch first 10 rows only
mysql:
select * from table1 where 1=1 limit 10
sql server:
读取前10条:select top (10) * from table1 where 1=1
读取后10条:select top (10) * from table1 order by id desc
oracle:
select * from table1 where rownum=10
取10-30条的记录:
select top 20 * from 表名 where id not in(select top 10 id from 表名)
扩展资料:
使用SQL从表中取记录。
SQL的主要功能之一是实现数据库查询。如果你熟悉Internet 引擎,那么你已经熟悉查询了。你使用查询来取得满足特定条件的信息。
多数Internet 引擎允许逻辑查询。在逻辑查询中,你可以包括特殊的运算符如AND、OR和NOT,你使用这些运算符来选择特定的记录。
如果需要扩展查询的结果,可以使用逻辑操作符OR。例如,如果执行一个搜索,搜索所有的其描述中包含Active Sever Pages OR SQL的站点,收到的列表中将包括所有其描述中同时包含两个表达式或其中任何一个表达式的站点。
如果想从搜索结果中排除特定的站点,可以使用NOT。例如,查询“Active Sever Pages ”AND NOT “SQL”将返回一个列表,列表中的站点包含Active Sever Pages,但不包含SQL。当必须排除特定的记录时,可以使用NOT。
用SQL执行的查询与用Internet搜索引擎执行的搜索非常相似。 当执行一个SQL查询时,通过使用包括逻辑运算符的查询条件,你可以得到一个记录列表。此时查询结果是来自一个或多个表。
MYSQL没有SELECT TOP的语法,你得用用LIMIT
select * from 表名 limit m,n;
从m开始,取n条
mysql是这样的:
select * from product limit 0,10;
你这个是sql server的
不同数据库之间会有差别的,oracle又不一样
select * from table_name limit n
这句语法没错 ,我记得 好象是 mysql数据库 不
支持 in(), not in() 这种sql语句 ,不知道 你
那提示的错误是什么,是不是这个原因。
你看看这样行吗?
String sql = "select * from users limit " +(pageNow-1)*pageSize+","+pageSize;
select * from (
select
tablename_tmp.*,
@rownum:=@rownum+1 ,
if(@pyear=tablename_tmp.year,@rank:=@rank+1,@rank:=1) as rank,
@pyear:=tablename_tmp.year
from (
select * from tablename order by year asc
)
tablename_tmp ,
(select @rownum :=0 , @pyear := null ,@rank:=0) a
)
result where rank =10
;
你这里其他条件判断是前十条记录吗?上面是每年各取十条。