役に立ちそうもないTips移転版

俺得なTipsを書き連ねるだけのブログ。

2006-01-01から1ヶ月間の記事一覧

結果集合のn件目からm行取る方法

TOP句が使えるDBMS限定ながら。 対象結果集合の主キーを「KEY」とすると SELECT * TOP m FROM foo WHERE KEY NOT IN (SELECT KEY TOP n-1 FROM foo ORDER BY KEY) ORDER BY KEY ちなみにDESCでn+m件取って並べなおしてm件という方法は全件数がn+m以上でない…

きれいに連番を振りなおす方法

主キー列を自動インクリメントにしていると番号が飛んだりするが、きれいに連番を振りなおしたい場合。 とりあえずテーブルそのものを直すのでなく表示のときに連番が振られてればいいのであれば、 SELECT (SELECT COUNT(*) + 1 FROM foo WHERE foo.id