我现在感觉有点愚蠢,但我似乎无法实现它。我有数据的som表和我有一个SELECT的问题是数据有时是重复的。 (对不起,英语不是我的第一语言,请问是否不清楚。
SELECT (IM_FAKTUROR.FAKT_NUMMER || ' ' || IM_FAKTURA_GRUPPER.FAKT_TYP) AS 'ProjektNrNamn',
但有时这两个表/列的数据完全相同,在这些情况下我只想要其中一个数据,而不是两者。 如何?
如果两者中有不同的数据我想要所有信息。
答案 0 :(得分:1)
使用case
表达式。如果两列具有相同的值,则只返回其中一列。否则返回两者:
SELECT case when IM_FAKTUROR.FAKT_NUMMER = IM_FAKTURA_GRUPPER.FAKT_TYP
then IM_FAKTUROR.FAKT_NUMMER
else (IM_FAKTUROR.FAKT_NUMMER || ' ' || IM_FAKTURA_GRUPPER.FAKT_TYP)
end AS 'ProjektNrNamn',
答案 1 :(得分:0)
试试这个:
SELECT DISTINCT ProjektNrNamn FROM
(
SELECT (IM_FAKTUROR.FAKT_NUMMER || ' ' || IM_FAKTURA_GRUPPER.FAKT_TYP) AS 'ProjektNrNamn'
) as t
答案 2 :(得分:0)
尝试SELECT DISTINCT
:
SELECT DISTINCT
IM_FAKTUROR.FAKT_NUMMER || ' ' || IM_FAKTURA_GRUPPER.FAKT_TYP AS 'ProjektNrNamn'
FROM ...
但是这个答案假设项目名称是选择列表中唯一的东西。如果您有其他列,则会变得更复杂。