Mostrando entradas con la etiqueta Oracle. Mostrar todas las entradas
Mostrando entradas con la etiqueta Oracle. Mostrar todas las entradas

martes, 5 de mayo de 2015

Ejemplos con Having en Oracle

Les comento que un compañero de mi trabajo toma un examen de Oracle / PLSQL a los que pasaron todas las pruebas previas (psicotécnico, razonamiento, etc). Pero he aquí la diferencia varios no saben usar esta sintaxis, su tipo pregunta es: Tengo 2 entidades Persona y Documentos, calcula las personas con más de un documento.

Para comenzar vamos a los conceptos:

  • Having es usando conjuntamente con GROUP BY.
  • Funciones que se puede combinar:
    1. SUM: Cuando requieras agrupar por cantidades que se acumulan y suman.
    2. COUNT: Cuando quieras buscar cantidades de registros sin sumar.
    3. MIN: Cuando requieras todos los registros mínimos a su valor.
    4. MAX: Cuando requieras todos los registros mínimos a su valor.

Vamos con unos ejemplos, tenemos la siguiente tabla simple:



1.- SUM: Queremos obtener la suma de total de temperatura por cada ciudad, lo podemos hacer con el siguiente query;

SELECT ciudad, SUM(temperatura) from
muestras GROUP BY ciudad HAVING SUM(temperatura);


Y si queremos sólo los que cumples que tengan más de 50 de total sumado de temperatura sólo le agregamos al final:
SELECT ciudad, SUM(temperatura) from
muestras GROUP BY ciudad HAVING SUM(temperatura)>50;


2.- COUNT: Si quisiéramos saber cuantas veces se repite cada registro sólo hacemos la siguiente consulta:


SELECT ciudad, COUNT(temperatura) from muestras GROUP BY ciudad HAVING COUNT(temperatura);



Ahora si queremos sólo las que tienen registros mayores a 2, esta es la consulta:

SELECT ciudad, COUNT(temperatura) from
muestras GROUP BY ciudad HAVING COUNT(temperatura)>2;



3.- MAX y MIN: Si quisiéramos saber cuanto es el máximo de cada uno de los registros pero no repetidos hacemos la siguiente consulta:



SELECT ciudad, MAX(temperatura) FROM muestras
  GROUP BY ciudad HAVING MAX(temperatura);



Ahora si sólo queremos los mayores a 16 haríamos lo siguiente:
SELECT ciudad, MAX(temperatura) FROM muestras  GROUP BY ciudad HAVING MAX(temperatura)>16;


Para mínimo es la misma lógica.

Ahora se atreven a dar el examen y dar un respuesta? Espero esté todo claro. Espero verlos muy pronto.



PD: La misma idea funciona para la base de datos MySQL.
El código de la tabla y registro es el siguiente:
CREATE TABLE  `muestras` (
  `ciudad` varchar(40) DEFAULT NULL,
  `fecha` date DEFAULT NULL,
  `temperatura` number(4) DEFAULT NULL
) ;
INSERT INTO `muestras` (`ciudad`, `fecha`, `temperatura`) VALUES
('Madrid', '2005-03-17', 23),
('París', '2005-03-17', 16),
('Berlín', '2005-03-17', 15),
('Madrid', '2005-03-18', 25),
('Madrid', '2005-03-19', 24),
('Berlín', '2005-03-19', 18);

jueves, 3 de julio de 2008

Java 2 - Sesión 5

Conexión a Base de datos Oracle

En esta parte aprenderemos como conectarnos a la base de datos oracle desde java claro esta.Despues de haber instalado tu oracle segun las instrucciones anteriores o como lo hubieras instalado.
Primero tengamos unas consideraciones generales.

1.-Descarga el driver para poder habilitar el puerto de comunicación de Oracle y java.Aquí te lo dejo para que no lo estes buscando.(solo descomprimelo)
2.-Aca tendras que elegir conseguir tu IP o tu verdadero nombre de administrador.Esto es para poder poner la cadena de conexión de oracle desde java.
Tu ip lo puedes sacar haciendo ejecutar(ctrl+r) y escribiendo IPCONFIG el primer ip que te salga ese copialo es muy importante para la conexión.
Si no te inclunas por la opcion del IP puedes tambien tener tu nombre de Administrador de tu computadora que es el primero que le ponemos a nuestra computadora cuando instalamos windows xp.Lo puedes obtener haciendo esto rapidamente.
Presiona ahora "Windows+L" (con esa opcion sales de la cuenta que estas).
Luego presiona dos veces "ctrl+alt+supr" y te saldra un nombre adminsitrador haces aceptar y entras a otro escritorio donde tienes que saber como se llama tu administrador poniendo en inicio.En mi caso mi nombre de administrador me salio JOCLUIS.

Bueno despues de estas configuraciones describamos la cadena de conexion que es muy importante.

"jdbc:oracle:thin:@jocluis:1521:jocluis","system","jocluis"

Lo de rojo es el nombre del Administrador o tambien aca pueden poner en vez del nombre el IP de su computadora.
Lo de azul es el puerto de comuncación.Solo hay que dejarlo en 1521 es general.
Lo de negro es el nombre de la Base de datos de oracle,cuando instalamos oracle ponemos un nombre al inicio no olvidar ese nombre es importante.
Los de celeste ,el primero es el Usuario que en este caso es system y el otro y ultimo es la contraseña.

Primero instalemos o hubiquemos el Driver que hemos descargado.

-Nos vamos donde estan los nombres de los proyectos a cualquiera le hacemos click derecho Properties.Como muestra la imagen.
-Luego nos sale el siguiente cuadro.Poner en libraries (como se muetra) y poner en Add Jar/folder.Lo hubicamos donde esta el driver y aceptamos.
Bueno juguemos con la tabla de ejemplo de Oracle Llama CATALOG.

Ejemplo 1:Reporte de tabla Catalog de Oracle.


Abrimos un JSP y copiamos el siguiente codigo que es masomenos similar con el que hemos trabajado anteriormente.Claro con su propia cadena de conexion xD.


Código:

<html>
<head>

<title>Reporte de CATALog</title>
</head>
<body>
<h2>Conexion a Oracle</h2>
<table>
<%@ page import="java.sql.*"%>
<%
Connection con;
Statement sen;
ResultSet res;
Class.forName("oracle.jdbc.driver.OracleDriver");
con=java.sql.DriverManager.getConnection("jdbc:oracle:thin:@jocluis:1521:jocluis","system","jocluis");
sen=con.createStatement();
res=sen.executeQuery("Select * from catalog");

while(res.next()){
%>
<tr>
<td><%=res.getString(1)%></td>
<td><%=res.getString(2)%></td>
<td><%=res.getString(3)%></td>

</tr>
<%
}
con.close();
%>
</table>

</body>
</html>


La salida es la siguiente:

Cave rescatar (asi no se escribe pero asi escribo yo xD) que solo hemos cambiado la cadena de conexion que usabamos antes luego lo demas es similar.
Podemos notar como me habian dicho como haria una busqueda.Solo crearia dos JSP y en una haria el formulario de busqueda que un FORM y este invocaria al otro JSP con la misma estructura de arriba pero con un IF comparador adnetro de este.

martes, 24 de junio de 2008

Instalación Oracle 10g

Antes de trabajar con base de datos oracle desde un JSP.Primero (si algunos no tienen) instalemos oracle en nustra computador.
Despues veremos como tratar mejor la base de datos de oracle gracias al TOAD que es un manejador de oracle mas simple porsupuesto que manejar el propio oracle.
Bueno sin mas preambulos iniciemos la instalación de oracle.

1.-Primero encontremos el icono de Setup que cargara una pantalla tipo Dos(negrita) diciendo instal.
2.-Despues de haber leidos los paquetes nos pedida un nombre y una contraseña(se sugiere poner cualquier nombre) pero de contraseña poner oracle(por si nos olvidamos) .


3.-Poner en siguiente y comenzara a cargar un par de minutos.
4.-Luego saldra la ventana acontinuacion poner check en la casilla y poner siguiente.
5.-Luego nos aparecera una ventana de advertencia poner en aceptar.(Aveces retrocede a la ventana anterior porque no hemos ingresados caracteres invalidos por eso preferi solo poner oracle,bueno si sufren ese problema solo retomen la instalación).

6.-En esta comprobacion tambien poner siguiente previo haber dado el check de habilitacion.

7.-Nos aparecen los productos que se van instalar.Poner Intalar.
8.-Esperamos unos minutos para que instale todo los productos del oracle.

9.-Si hemos marcado la opción de creación de la base de datos nos mostrará el progreso de este proceso:

10.-Luego nos saldra un asistente de instalacion poner Acpetar.

11.-Atencion con esta ventana,verificar que SYS y SYSTEM esten desbloqueados(por defecto estan desbloquedos).Bueno despues de esta verificacion ponemos Aceptar.

12.-Ultima ventana de Fin de instalacion y podra disfrutar de oracle..x)

Claro que si..!
13.-Luego cargara automaticamente una ventana donde coloquemos de usuario SYSTEM y contraseña la que pusismos al inicio ORACLE.

Ponemos en conectar y ya estamos dentro de Oracle.Aceptamos los terminos y Disfruta.
Se muestran algunas Interfaces que se encuntran dentro del oracle.Si no te salio la ventana de entrada a oracle automaticamente,poner Inicio>>Programas>>Oracle>>DataBase control

Mas adelante enseñare la instalacion del Toad asi que vallan consiguiendolo y con ellos algunos codigos de manipulacion de Oracle via TOAD.


Via | AjpdSft