SQL(四)データベース選択指定行データ

1132 ワード

SQL SERVERを使って、他のデータベースの表現は少し違っているかもしれません。
状況一:
最初の50レコードを選択
SELECT TOP 50 * FROM table_name
テーブルの中のいくつかの列の最初の50条を選択します。
SELECT TOP 50 column_name(s) FROM table_name
状況二:
50行目を選択
方法1
SELECT no=Identity(int,1,1),* INTO temptable FROM table_name
SELECT * FROM temptable WHERE no=15
DROP TABLE temptable
identity関数を利用して記録番号を生成し、元テーブルデータを一時テーブルtemptableに保存する。
使用後、一時テーブルテーブルテーブルを削除します。
方法2
SELECT TOP 1 * FROM (SELECT TOP 50 * FROM table_name ORDER BY colnum_name DESC) AS f
方法3
SELECT TOP 1 * FROM table_name 
WHERE column_name NOT IN (SELECT TOP 49 column_name FROM table_name)
状況3
50行から99行のデータを選択します。
SELECT no=Identity(int,1,1),* INTO temptable FROM table_name
SELECT * FROM temptable WHERE no>=50 AND no<100
DROP TABLE temptable
状況4
前50%のデータを選択
SELECT TOP 50 PERCENT * FROM table_name
参考:
[1] https://bbs.csdn.net/topics/340019695
[2] http://www.runoob.com/sql/sql-top.html
[3] http://www.w3school.com.cn/sql/sql_トップ.asp