我试图根据一个条件找出顶级客户 - 他们是memo
表中transaction
列的直接用户。如果备忘录包含PAYROLL
,PAYRLL
,SALARY
和transaction_type = 'Credit'
等字词,则会将其视为最佳客户。因此,我在下面写了一个查询:
SELECT user_id,
CASE WHEN transaction_type = 'Credit' AND
(memo LIKE '%PAYROLL%' OR memo LIKE '%PAYRLL%' OR memo LIKE '%SALARY%')
THEN 1 ELSE 0 END AS TOP_USERS
FROM transaction
但是,我看到一个人应该是1,但在本专栏中仍然算作0。 我的外卡有什么问题吗? 我正在使用PostgreSQL pgadmin3
答案 0 :(得分:0)
根据您的评论,该人员拥有' Credit'在transaction_type和' AMERICAN AIRLINE PAYRLL DEP'在备忘录"是那些相同的记录?是否有美国航空公司PAYRLL DEP'显示在同一记录中的备忘录中,其类型为' Credit'或者他们是单独的记录?如果它们是分开的,则将AND更改为OR将解决它。