сравнение строк улья не возвращает никаких значений - PullRequest
0 голосов
/ 02 апреля 2019

При попытке выбрать только столбцы, строка которых равна значению в Hive, мне возвращается пустое значение.

Схема таблицы следующая:

DESCRIBE table_name;
a                       string                                  
b                       int                                     
c                       in

Содержимое таблицы выглядит следующим образом:

SELECT * FROM table_name;
"more"  10  30
"dur"   11  30
"vowww" 13  30

Теперь я пытаюсь запросить, где a = "more"

Запущенный мной запрос SELECT ... WHERE:

SELECT * FROM table_name WHERE a='more'

Возвращаемое значение пусто

Я также попытался:

Чтобы проверить, работают ли двойные кавычки, работает ли запрос для других значений столбца (это не так)

Ответы [ 2 ]

2 голосов
/ 02 апреля 2019

Результат вашего запроса:

SELECT * FROM table_name;
"more"  10  30
"dur"   11  30
"vowww" 13  30

Этот запрос вернет правильные значения:

SELECT * FROM table_name WHERE a='"more"'

Вы должны удалить ", используя regex.Пожалуйста, прочитайте этот ответ Значения, вставленные в таблицу улья с двойными кавычками для строки из CSV-файла

1 голос
/ 02 апреля 2019

1-я попытка подстановочного знака, чтобы увидеть, выбирает ли он записи или нет

SELECT * FROM table_name WHERE a like '%more%'

тогда, если он выбирает записи

SELECT * FROM table_name WHERE a='"more"'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...