私は、古いデータの一部をDBのいヒープからより便利なものに標準化および移行しています。
ところで、ソース DB は MSSQL/SQL-Server です。
(そして、列とテーブルの無秩序な広がり、FKの使用がほとんどないことに悩まされています.FKがある場合、特定のUIユースケースで一意のIDが変更されるため、FKが壊れていることがよくあります!!! :)
現在、顧客データを収集しています。ここには、主に 2 つの顧客カテゴリがあります。それらは相互に排他的ではありません。使用されている用語はかなり難解なので、ここでは簡略化してUserとResellerにします。
現在のところ、ソース テーブルには 4 つ (はい、4 つ) の列があり、顧客が再販業者かユーザーかを判断するために使用できます: is_user
、isuser
、is_reseller
、およびcust_type
。列には手書きの値が格納されるため、スペルや略語のバリエーションにも直面します
:)cust_type
is_user
各顧客タイプを個別に選択する以前のクエリがいくつかありますが、結果が単純なブール値と単純なブール値を持つ 1 つのクエリにそれらを統合したいと考えていますis_reseller
。
これは、ユーザー向けの私のqryの例です(簡潔にするためにトリミングされ、機能はそのままです):
SELECT TOP 1 name, email, phone
FROM customer
WHERE name = '{$row['cust']}'
AND ( isuser=1
OR is_user=1
OR cust_type LIKE 'USER%'
OR cust_type = 'DIRECT USER'
)
私の目標は、その条件を排除し、それを結果セット内の追加の列に置き換えて、is_user
TRUE/FALSE かどうかを示すことです。
これは SQL (特に MS フレーバー) でどの程度実行可能ですか?