mysql:8880
From: 柴垣 顕郎 <柴垣 顕郎 <akiro@xxxxxxxxxx>>
Date: Tue, 02 Mar 2004 15:16:21 +0900
Subject: [mysql 08880] 整数フィールドの次の空きを探す sql は
SQLを使い始めた、という段階なのですが、次のようなレコードを 検索する効率のいいSQLはないかと、考えているところです。 たとえば、1、3、4、5、8、9、といったような、順番には並んでいるが 値に跳びのあるフィールドを持つテーブルがあって、ある数字から 次のあいている数字を探す、というものです。昇順では2ならば6、 6ならば7、7ならば10をみつけるもの。降順では10ならば7、 7ならば6、6ならば2、2ならば0、0ならば該当なし、 といった検索です。 一応、シーケンシャルなフィールドをもった作業テーブルを媒介に 自己結合を用いる方法を考えたのですが、なかなか効率のいい やり方がみつかりません。 いろいろな場面で直面しそうな問題だと思うのですが、何かうまい 方法はないでしょうか。 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 柴垣 akiro@xxxxxxxxxx _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
-> 8880 2004-03-02 15:16 [柴垣 顕郎 <akiro@xx] 整数フィールドの次の空きを探す sql は 8882 2004-03-02 15:59 ┣[KAWAJI Shinya <kawaj] 8883 2004-03-02 16:04 ┃┗[KAWAJI Shinya <kawaj] 8888 2004-03-02 20:50 ┃ ┗[柴垣 <akiro@xxxxxxxx] 8889 2004-03-02 23:40 ┃ ┗[ML account <ml@xxxxx] 8890 2004-03-03 08:47 ┃ ┗[KAWAJI Shinya <kawaj] 8894 2004-03-03 09:28 ┃ ┣[柴垣 <akiro@xxxxxxxx] 8899 2004-03-03 12:54 ┃ ┃┗[Seiji Uramoto <uramo] 8895 2004-03-03 10:11 ┃ ┣[ML account <ml@xxxxx] 8898 2004-03-03 12:35 ┃ ┗[班石悦夫 <madara@xxx] 8900 2004-03-03 14:44 ┃ ┗[ML account <ml@xxxxx] 8885 2004-03-02 16:19 ┣[ML account <ml@xxxxx] 8886 2004-03-02 18:48 ┗[班石悦夫 <madara@xxx]