LATERAL INLINE VIEW
Uma LATERAL INLINE VIEW, nada mais é que uma inline view(subquery no from) que referencia uma outra tabela(a esquerda(left)) do FROM. Mas existe algumas restrições, uma delas é que não é possível utilizar as cláusulas PIVOT e UNPIVOT, não pode se referir a primeira tabela envolvida em um RIGHT OUTER JOIN ou FULL OUTER JOIN entre outras restrições.
Para entendermos o seu funcionamento, vamos ver um exemplo de uma inline view que tenta referenciar outra tabela a sua esquerda no FROM.
Percebam que ao tentarmos referencia a tabela “e” na inline vuew foi lançado um erro mostrado que o identificador era inválido. Essa tabela não é reconhecida na inline view. Para isto devemos utilizar uma nova palavra reservada, LATERAL. Vejam no exemplo.
Além de modificarmos a nossa SELECT LIST, a única modificação feita foi a adição da palavra reservada LATERAL. Com isto podemos especificar a tabela a esquerda, pois agora ela é reconhecida na inline view, que no nosso caso foi a employees e. Limitamos no exemplo o nosso resultado apenas as 10 primeiras linhas apenas para demonstração.
Referência
- Oracle 12c SQL Reference
https://docs.oracle.com/database/121/SQLRF/statements_10002.htm#SQLRF01702
Tércio Costa, formado em Ciências da Computação em 2013 pela UFPB. Tenho experiência em Servidores Windows Server, Linux e banco de dados Oracle desde 2008 juntamente com os seus serviços. Desde então venho aperfeiçoando os meus conhecimentos em produtos Oracle e Sistemas Operacionais. Tenho experiência também em bancos SQL Server, MySQL e PosrgreSQL além da linguagem de programação Java, onde desenvolvi projetos freelance utilizando banco de dados Oracle XE e Java SE.
Mantenho o Blog https://oraclepress.wordpress.com reconhecido pela Oracle Technology Network OTN, onde também sou articulista e sou certificado Oracle Database SQL Certified Expert!