2012-04-25 3 views
1

Я хотел бы выбрать столбцы и объединить таблицы, в которых условие объединения объединяет выбранные столбцы в дополнение к точкам. Напр.Конкатенация в классической строке SQL asp/vbscript

SELECT TBL1.ID, 
TBL1.COUNTRY As A, 
TBL1.STATE As B, 
TBL1.CODE As C 
FROM TBL1, TBL2 
WHERE TBL2.ID = A+'.'+B+'.'+C 

данные так, что TBL2.ID выглядит как 'US.NY.61', где США является TBL1.COUNTRY, NY является TBL1.STATE и т.д.

UPDATE: SQl скрипку: http://sqlfiddle.com/#!3/26b6b/4

ответ

0

Как насчет пробовать что-то вроде этого

SELECT TBL1.ID, 
TBL1.COUNTRY As A, 
TBL1.STATE As B, 
TBL1.CODE As C 
FROM TBL1 
    INNER JOIN TBL2 ON CAST(TBL1.COUNTRY AS varchar(20)) + '.' + CAST(TBL1.STATE AS varchar(20)) + '.' + CAST(TBL1.CODE AS varchar(20)) = CAST(TBL2.ID AS varchar(20)) 

Добавлен код для добавления четырех полей в качестве varchar перед объединением и их сравнением.

+0

У меня, похоже, проблемы с типами данных, см. Скрипт sql – greener

+0

см. Мое решение ниже – Jatin

0
SELECT T.name,T2.nam FROM 
T INNER JOIN T2 
ON T.id = (T2.one + '.' + CAST(T2.two as varchar(50)) + '.' + CAST(T2.thr as varchar(50))) 
Смежные вопросы