Ответ 1
Возможно, что-то вроде
SELECT DISTINCT id1, id2, id1 + ', ' + id2
будет работать?
Я делаю переход от MySQL к SQL Server 2008 Express и не могу найти функцию CONCAT() - esque. У меня есть два столбца, которые я пытаюсь объединить в строку и найти уникальные комбинации.
id1 id2
001 abc1
002 qrs5
003 qrs5
003 abc1
... ...
Когда я попробую следующее:
select id1, id2, concat(id1, ", ", id2) as combo1
FROM db1
group by combo1
Появляется следующее сообщение об ошибке:
Msg 195, уровень 15, состояние 10, строка 1
"concat" не является признанным встроенным именем функции.
Любые предложения?
Возможно, что-то вроде
SELECT DISTINCT id1, id2, id1 + ', ' + id2
будет работать?
Вы можете использовать CONCAT в SQL 2008 (если вы действительно хотите), заключая в скобки
{fn CONCAT(id1,id2)} AS combo1
ПРИМЕЧАНИЕ. CONCAT принимает только два аргумента, поэтому вы должны их вложить, если вы хотите объединить более двух строк:
{fn CONCAT(id1,{fn CONCAT(id2,id3)})} AS combo2
CONCAT
не существует в SQL Server 2008, он является новым с SQL Server 2012.
Вместо этого вы можете использовать
select id1, id2, id1 + ", " + id2 as combo1
FROM db1
group by combo1