Inner join en power builder

Necesito hacer una consulta de tres tablas y calcular la sumatoria de campos agrupados que no en todos los casos existen en la otra tabla, consultando en internet encontré información y es similar a lo que necesito, pero el ejemplo se refiere a oracle, ¿yo necesito aplicar en Power Builder como se desarrollaría? La verdad no tengo mucha experiencia en union de tablas, agradezco mucho cualquier ayuda...
A continuación adjunto parte del texto:
...
Digamos que tenemos las siguientes dos tablas:

Tabla Store_Information
store_name Sales Date
¿Los Angeles 1500? 05-Jan-1999
¿San Diego 250? 07-Jan-1999
¿Los Angeles 300? 08-Jan-1999
¿Boston 700? 08-Jan-1999
Tabla Geography
region_name      store_name
East                     Boston
East                     New York
West                    Los Angeles
West                     San Diego
Y queremos saber la suma de las ventas de todos los negocios. Si realizamos una unión regular, no podríamos obtener lo que deseamos debido a que habríamos omitido "Nueva York" ya que no aparece en la tabla Store_Information.
Por lo tanto, necesitamos realizar una unión externa respecto de las dos tablas anteriores:
SELECT A1.store_name, SUM(A2.Sales) SALES
FROM Geography A1, Store_Information A2
WHERE A1.store_name = A2.store_name (+)
GROUP BY A1.store_name
Note que en este caso, estamos utilizando la sintaxis Oracle para unión externa.
Resultado:
store_name    SALES
Boston            700 ?
New York
¿Los Angeles 1800?
¿San Diego 250?
...

1 respuesta

Respuesta
1
Primero, aclarar que powerbuilder ejecuta el sql embebido, pero algunos son determinado por el tipo de conexión, quiero decir, a que tipo de manejadro de base de datos de estas conectando. ODBC, SQL server, Oracle, Anyware (Es ahí donde existe unas mínimas variaciones.)
Con respecto a la consulta es fácil usar el JOIN...
Ejemplo:
SELECT A1.store_name, SUM(A2.Sales) SALES
FROM Geography A1 left outer join Store_Information A2
          on (A1.store_name = A2.store_name)
GROUP BY A1.store_name;
Esta consulta retorna el resultado:
store_name    SALES
Boston            700 ?
New York
¿Los Angeles 1800?
¿San Diego 250?
Esto debido a la teoría de conjuntos... donde se le dice que muestre todos de la tabla A1 aunque no hayan en la tabla A2. Y se aria lo mismo teniendo una tabla más. Ah... noten que el SQL Embebido siempre debe terminar con ";".

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas