我正在将我们的一些旧数据从丑陋的数据库堆中标准化并迁移到更有用的东西中。
顺便说一句,源数据库是 MSSQL/SQL-Server。
(而且它受到列和表蔓延的困扰,FK 的使用很少,并且在有 FK 的地方,它们经常被破坏,因为某些唯一 ID在某些 UI 用例中发生了变化!!!:)
现在,我正在收集一些客户数据。这里有两大类客户。它们不是相互排斥的。使用的术语相当神秘,因此我将在此处将其简化为User和Reseller。
就目前而言,源表中有 4 列(是的,4列)可用于确定客户是经销商还是用户:is_user
、isuser
、is_reseller
和cust_type
。
该cust_type
列存储手动输入的值,因此我们也面临拼写/缩写的变化:)
我已经有一些较早的查询,它们分别选择每种客户类型,但现在我想将它们合并到一个 qry 中,其中结果有一个简单的is_user
布尔值和一个简单的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 风格)中有多可行?