これはsybase 15です。これが私の問題です。
私は2つのテーブルを持っています。
t1.jobid t1.date
------------------------------
1 1/1/2012
2 4/1/2012
3 2/1/2012
4 3/1/2012
t2.jobid t2.userid t2.status
-----------------------------------------------
1 100 1
1 110 1
1 120 2
1 130 1
2 100 1
2 130 2
3 100 1
3 110 1
3 120 1
3 130 1
4 110 2
4 120 2
最近の 2 つの仕事のステータスが 2 の人をすべて検索したいと考えています。
私の計画は、t1 と t2 を結合し、特定のユーザーの日付順に逆順に並べられた派生テーブルの上位 2 つを取得することでした。したがって、上位 2 つは特定のユーザーの最新のものになります。
そうすれば、個人の最新の仕事番号がわかります。誰もがすべての仕事に就いているわけではありません。
次に、sum(status) = 4 などのステータス 2 を検索する派生テーブルに対して結合する外部クエリを作成するつもりでした。これにより、ステータス 2 が 2 つある人が検索されます。
しかし、sybase では、派生テーブルで order by 句を使用できません。
これをどうするかについての提案はありますか?
すべてのユーザーをループする小さなプログラムをいつでも作成できますが、それから 1 つの horrendus sql を作成しようとしました。
ジューシーなものですね。