カラムに文字列値Username
があります。 サンプルユーザ名:SQL Select文は2つのカラムに別々の値を設定します
USERNAME
--------
foobar123
john
smith23
steve
peter
king213
番号を持つユーザ名末尾に、これらのユーザーは、もはや有効であることを意味しません。これらのユーザー名は、レポート用に1つのSelect文で2つの列(Active
とNot_Active
)に分けています。
結果は次のようになります。
Active Not_Active
john foobar123
steve smith23
peter king213
問合せ:
SELECT
Username,
(
CASE Username
WHEN '%[0-9]%' THEN 'Not'
ELSE 'Active'
END
)
FROM
Users;
私はケースを試してみましたが、私は、ユーザー名の値を取得する方法がわかりません。
データには同じ行の異なる列の値の間には関係がないため、関係代数とデータベースクエリの設計の性質を理解しているとは思いません。 – Dai
まず期待される出力を決定し、それに従って質問を編集する必要があります。通常のロジックでは、 'usename'と' status(active、not_active) 'という2つのカラムを持つ出力が必要です。あなたの現在の予想される出力は奇妙です。 FULL OUTER JOINを使用して行番号を使用してアーカイブすることができます。これは、すべてのアクティブなユーザーとnot_activeユーザーの2つの結果セットを取得した後で、通常の意味ではうまくいかない場合です。 –
使用しているdbmsにタグを付けます。ここにいくつかの製品固有の機能がほしいと思うようです。 – jarlh