2017-01-17 3 views
0

Я имею немного времени, пытаясь сделать эту работу ...Возникли проблемы с SQL присоединиться к

У меня есть одна таблица, которая использует 1 или 2 цифры для недели #. (1 до 52)

Я еще одна таблица, которая использует 1 или 2 цифры для недели #, но также имеет 2 цифры года прилагается (117, 1017, 2217 и т.д.) (117 в 5217)

Это это единственное поле, которое я могу использовать для объединения этих таблиц.

Как подключить tableA к таблицеB на 1 = 117 или 12 = 1217 ... и т. Д.?

Часть года может быть опущена.

+1

Есть ли шанс, что вы можете сделать все номера недели двумя символами (ведущий ноль), чтобы сделать это немного более разумным? – alroc

ответ

0

Дайте этому выстрел

SELECT a.Col1,b.Col1 
FROM tablea a 
JOIN tableb b ON (
     (LEN(b.Col1) = 3 AND a.Col1 = LEFT(b.Col1,1)) 
     OR 
     (LEN(b.Col1) = 4 AND a.Col1 = LEFT(b.Col1,2)) 
) 

Это предполагает, что ваш типы данных (п) VARCHAR. Если они являются INT или другим цифровым типом, вам нужно включить в предложение join.

Смежные вопросы