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?