2017-02-08 7 views
0

Я создаю базу данных в SQL Server 2016, я пытаюсь выяснить, как я могу поместить ряд чисел в столбец.SQL Server 2016 - диапазон номеров в поле

Например -

  • Numbers Street - 1000-2999
  • Название улицы - Dixie Hwy
  • Код карты - 205B

Я хотел бы искать "1344 Dixie Hwy" и вернуть код карты 205B, но я пытаюсь найти лучший способ сделать столбец уличных номеров.

ответ

0

Я думаю о лучшем, что вы можете сделать, это иметь range_start и range_end, а затем использовать предложение BETWEEN в запросе. Так для примера:

Street_Number_Start - 1000 
Street_Number_End - 2999 
Street_Name - Dixie Hwy 
Map_Code - 205B 

и

select map_code 
    from my_table 
where 1134 between street_number_start and street_number_end 
    and street_name = 'Dixie Hwy' 
+0

Вот о чем я думал. Это совершенно новое для меня, поэтому я просто хотел убедиться, что не было лучшего способа, прежде чем я вошел во все эти. Будет несколько тысяч строк, которые мне придется вручную вводить. – Unforgettable300

+0

Ну, если вы подумаете о более лучшем пути позже, вы можете использовать запрос для переноса ваших данных в новую структуру. Но я дважды проверял, и я не вижу типа, который бы действительно поддерживал числовой диапазон как одно значение. Я думаю, вам придется хранить его как строку, а затем использовать действительно грязное выражение для его интерпретации. Сохраняя это просто, как предложено здесь, вы можете легче использовать индексы и т. Д., Если это необходимо. Вот почему я пошел бы так, если бы это был я –

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