У меня есть представление, которое показывает список gsmnumbers, который используется для расчета определенных тарифов. Эти цифры взяты из таблицы чисел, и это простой и простой вид. Тем не менее, мне нужно добавить к нему больше чисел на основе конкретных данных, и это становится затруднительным.Oracle SQL: объединение между значениями в представлении
У меня есть таблица, которая не является списком gsmnumbers, но содержит несколько диапазонов. Мне нужно получить все числа в пределах этих диапазонов, добавленных в представление gsmnumber.
Если мы посмотрим на таблицу, содержащую диапазоны, у них есть идентификатор, код продукта, начальное значение и конечное значение (также необходимо включить начальное значение и значение endvalue). Мне нужно иметь список всех значений числа, которые находятся между начальными значениями и значениями конца для каждой строки, где код продукта равен 37.
Тот факт, что у меня разные диапазоны, затрудняет мне поиск ответа на этот вопрос, так как большинство поисковых запросов просто отвечают, как получить значения одного диапазона.
Вам нужно что-то вроде слева присоединитесь к составному условию, например '... from gsmtable g left join rangetable r on (g.gsmnumber> = r.beginvalue AND g.gsmnumber <= r.endvalue) ... где r.productCode = 37'. Если числа имеют числовой тип данных, '... from gsmtable g left join rangetable r on (g.gsmnumber между r.beginvalue AND r.endvalue) ... где r.productCode = 37' – collapsar
Возможно, если вы обновили ваш вопрос, чтобы включить образец ввода и ожидаемые выходные данные, мы сможем вам помочь? См. [Этот вопрос] (пример того, как были предоставлены примеры данных) - это минимальный размер, который должен быть предоставлен, - следует приветствовать создание операторов таблиц и вставки, или если вы можете настроить запрос с помощью предложения WITH для генерации образцы данных, что было бы еще лучше. Или предоставите [SQLFiddle] (http://sqlfiddle.com) с содержащимися там скриптами. – Boneist