例として2つのテーブルを作成しました。
表1:親アイテムが列挙されている列を作成します。
Gender Table
ID | Gender
---------------------
0000-0000 | MALE
0000-0001 | FEMALE
表2:
Table
ID | PARENTID | NAME
----------------------
1 | 0000-0001 | Apple
2 | 0000-0000 | Bob
3 | 0000-0000 | Chris
4 | 0000-0000 | Dan
5 | 0000-0001 | Elsa
表2のPARENTIDは、表1のIDを指します。
これから、Appleは女性、Bobは男性です。
ただし、このように出力する必要があります。
List
-----
MALE
Bob
Chris
Dan
FEMALE
Apple
Elsa
これはまったく可能ですか?
select name
from
(1 as SortOrder, 'Male' as name
+
2, male names (apply WHERE clause)
+
3, 'Female'
+
4, female names(apply WHERE clause)
) Q
order by SortOrder
UPDATE(ユニバーサルソリューション):
を想定すると:
明示的に指定されていない限り、SQLはセット、順序付けられていないセットを返します。 SQLの方法は、2つの列の結果(名前、性別)です。 –
つまり、あなたのソリューションはSQLに違反しています。これを動的にしたい場合は、すべての性別タイプを識別するダミーの行を挿入します(男性と女性は男女です)。これらの結果がそれらのセットで返されるグループ化集合(GROUP BY GROUPING SETS(()、()など)を使用すると、順序を指定できますが、SELECT文を変更する必要があります。複数のクエリの代わりに1つの複雑なクエリ:)しかし、クエリ結果に識別ラベルが必要ですか? –