J'exécute une requête sur Hive similaire à:
SELECT *
FROM (SELECT a
FROM b
WHERE
sex = 'M'
AND degree = 'Bs'
AND age = 15
AND name LIKE 'L%'
);
l'erreur est:
cannot recognize input near '<EOF>' '<EOF>' '<EOF>' in subquery source
L'ajout d'un alias de table pour votre sous-requête est nécessaire pour Hive. Ci-dessous, j'utilise 't1' comme alias:
SELECT *
FROM (SELECT a
FROM b
WHERE
sex = 'M'
AND degree = 'Bs'
AND age = 15
AND name LIKE 'L%'
) t1 ;
Tous les votes négatifs sont injustifiés. Hive ne produit souvent pas d'erreur correcte et vous jette un "EOF" paresseux. Dans ce cas, il vous suffit de spécifier un alias de table pour votre sous-requête. SELECT * FROM (.....) tbl_alias