Объединить два SQL-запроса — невозможно использовать предложение WHERE с опцией between в postgres

#sql #postgresql #postgresql-9.1

#sql #postgresql #postgresql-9.1

Вопрос:

У меня есть эти два SQL-запроса:

 select * 
from table1 
where table1.item_no::character varying between '2000' and '3000' 
  and batch_id = 'new'
  

и

 select * 
from table1 
where table1.item_no::int between '2000' and '3000' 
  and batch_id = 'new'
  

item_no тип данных отличается от символа.

Как объединить два вышеупомянутых SQL-запроса в postgres?

Комментарии:

1. Ваш вопрос неясен.. Не могли бы вы привести некоторые примеры данных и желаемый результат?

2. Почему вы изначально храните числа в varchar столбце? Второй, вероятно, должен быть table1.item_no::int between 2000 and 3000

3. Совершенно непонятно, что вы имеете в виду под «слиянием», но вот основные параметры: postgresql.org/docs/current/queries-union.html

4. @ a_horse_with_no_name вторым является table1.item_no::int между 2000 и 3000.

5. @Ancoron .у меня есть данные «1623H», «1623I» в столбце .item_no, поэтому я хочу объединить два запроса.