1. Sybase sql Anywhere 怎么取数据库第一行
Sybase公司的数据库产品有 大型数据库:Sybase sqlserver 中型数据库:Sybase adaptive server 小型数据库:Sybase sql anywhere
2. 在oracle中是否有类似“select top n”的选择指定件数的方法
没有的。
MySQL 和 Oracle 中的 SQL SELECT TOP 是等价的。
Oracle 语法
SELECT column_name(s)
FROM table_name
WHERE ROWNUM <= number
例子
SELECT *
FROM Persons
WHERE ROWNUM <= 5
(2)oraclesqltop1扩展阅读
SELECT TOP 子句用于规定要返回的记录的数目。SELECT TOP 子句对于拥有数千条记录的大型表来说,是非常有用的。
注释:并非所有的数据库系统都支持 SELECT TOP 子句。
select top与limit的区别:
这是来源于不同数据库里面的使用方式:
1、在access/mssqlserver里面支持的sql用法selecttop;
2、2,在mysql/oracle里面支持的sql用法为select...limit;
就使用而言两者没有什么区别,只是应用平台不一样而已。
3. 请教oracle高手!一个sql语句转换为oracle的语句:
SELECT TOP1 FROM temp1 LEFT JOIN temp2 ON temp1.SYMBOL = temp2.SYMBOL AND
temp1.TIME<temp2.TDATE
4. 如何用SQL SERVER取分组数据第一条
根据table1_id进行分组所得结果:
select * from (select a.id as a_id,a.name,a.time,a.content,b.id as b_id,b.user from table1 a inner join table2 b on a.id = b.table1_ID) new_tbl where b_id in (select min(id) from table2 group by table1_ID)
(4)oraclesqltop1扩展阅读:
注意事项
在SQL Server数据库中,使用top关键字:SELECT TOP number|percent column_name(s) FROM table_name
在MySQL数据库中,使用LIMIT关键字:SELECT column_name(s) FROM table_name LIMIT number
例子:SELECT * FROM Persons LIMIT 1
select bookName from book where price > 20 limit 1;
limit 1;
or
limit 0,1;
在Oracle数据库中,使用ROWNUM关键字:
SELECT column_name(s) FROM table_name WHERE ROWNUM <= number
例子:SELECT * FROM Persons WHERE ROWNUM <= 1
5. 求助Oracle中有类似Top 1 的语法吗
top有两种用法(个人知道的)
(1)取第一行,不管是什么,反正我要第一行。这个在oracle中可以用rownum=1,取前N行用,rownum<=N实现。不可以用rownum>XXX或者rownum=N(N>1),必须是<=N或<N+1或=1.
(2)在与order by连用的时候,能取到最大值,或者最小值。这里可以用子查询+rownum来实现。就是在子查询中按需要的排序(升序或降序),然后在子查询外面的查询中用rownum来控制。当然只取最大或最小的top1,也可以用max和min的子查询来实现。
6. oracle sql 求众数
假设三个列名为 mon id days
SQL> select mon,days from t1;
MON DAYS
---------- ----------
1 3
1 3
1 3
1 4
1 2
1 3
1 3
2 4
2 4
2 4
2 4
MON DAYS
---------- ----------
2 2
2 3
2 3
SQL> select mon,days from (
2 select mon,days,row_number()over(partition by mon order by mon,cnt desc) rn from (
3 select mon,days,count(*) cnt from t1 group by mon,days)) where rn = 1;
MON DAYS
---------- ----------
1 3
2 4
7. 下面这个sql语句是oracle语法写的,现在要执行sqlserver的数据库,结果执行不了
你先把and ri.TestItemName in (" + "'血红蛋白量', '*血红蛋白量', '嗜酸性粒细胞绝对值'" + ")" 这段代码取掉看能执行不,如果不能执行就是单引号引起的。
8. sql server和oracle中查询结果返回指定行数的语句
SqlServer返回指定行数查询结果:
selecttop10*fromtalbewherea>10orderbya;
进行排序后,再返回指定行数,可以返回最大的行数或最小的行数。
Oracle返回指定行数查询结果:
select*fromtablewherea>10andrownum<=10;
进行排序后,只能取得默认的行数,无法直接排序,
若要排序,则要嵌套Sql:
select*from(select*fromtablewherea>10orderbya)whererownum<=10;
你验证过吗?oracle子查询不支持order by?