以某些字母结尾的SQL - >奇怪的行为?

时间:2014-11-10 20:49:05

标签: sql db2

我有一个简单的SQL问题: 我想让所有客户(更准确地说:他们的名字和他们的余额)在以E.结尾的部门工作。我想按名称按字母顺序排序我的结果。因此我的查询是:

SELECT Name,Balance FROM customer WHERE sector LIKE '%E' ORDER BY Name 

,这给了我错误的结果。 我通过查找存在哪些扇区来测试它:

SELECT Distinct(Sector) FROM Kunde

给我:

Sector  
----------
AUTOMOBILE
BUILDING  
FURNITURE 
HOUSEHOLD 
MACHINERY 

现在我尝试使用像

这样的查询
SELECT Distinct(Sector) FROM customer WHERE Sector LIKE '%E'

只给我:

Sector 
----------
AUTOMOBILE

这可能是我在这里愚蠢,但为什么在最后一个查询中给我汽车和家具?我没有看到问题所在。如果这很重要,我会使用DB2。 谢谢!

1 个答案:

答案 0 :(得分:5)

如果是尾随空格,请将其删除:

SELECT Distinct(Sector) 
FROM customer 
WHERE RTRIM(Sector) LIKE '%E'