2010-12-21 37 views
0

我有一个案例,在那里我有产品代码,它是4个符号长。然后在某些情况下,产品基本上与第一个符号相同,例如一个产品代码是7456,另一个产品代码是8456,这些产品仍然具有相同的功能。所以唯一不同的是第一个符号和rigth的三个符号保持不变。案件之间的价值观之间的问题-formula

我的问题是,我想比较两个数据表彼此,并在第一个表中可以使用代码7456和第二个代码8456。我想将这两个数据加在一起,但我不知道如何告诉SQL,如果以7或8开头的代码使用三个最后的符号。

我认为可能的解决方案将是某种情况下,当值之间7000-8999然后使用3权,但我不能让这个代码工作?会有人有我的解决方案?谢谢!

回答

0

您正在寻找这样的事情

CASE 
    WHEN value BETWEEN '7000' AND '8999' 
     THEN RIGHT(value, 3) 
    ELSE value 
END 
+0

感谢您的快速回复!我认为这是我正在寻找的东西,但这还没有奏效。现在我不再有任何错误,但现在当数值介于7000和8999之间时,我得到空单元格。我做错了什么? – Zorro 2010-12-21 11:31:37

+0

请显示您正确选择的选择语句以及您希望从中选择的表格架构。 – 2010-12-21 11:33:55

+0

CASE当'7000'和'8999'之间的值为正值(值,3)其他值END – Zorro 2010-12-21 11:37:22