viernes, 29 de noviembre de 2013

INSERT table y SELECT table con Mysql



SQL INSERT
En este MYSQL TEMA analizamos instrucciones basicas para inserccion, captura o carga de datos en la tabla.
Se empieza usando un metodo muy practico de cargar una tabla con un conjunto de renglones a la vez, es decir existen ocasiones en donde se dispone de una cantidad de informacion muy grande para empezar a cargar la tabla, por ejemplo la primera vez que se captura la tabla de peliculas y se tiene que dar de alta el conjunto de peliculas en existencia.
Mysql tiene instrucciones apropiadas para inserccion de registros o renglones a la tabla, pero dicha instruccion apropiada inserta renglon por renglon y si se tiene que insertar 500 renglones o registros a la vez, entonces se ocupa un mejor mecanismo.
Crear un archivo de texto con el NOTEPAD o WORDPAD de WINDOWS , por ejemplo llamado peliculas.txt, escribir en cada renglon los datos EN EL MISMO ORDEN CORRESPONDIENTE a como se creo la tabla original, cada dato debera separarse con el TABULADOR (tecla tab), para valores faltantes usar \N ( NULL).
Ejemplo:

image273.jpg

Para capturar usar la siguiente orden de MYSQL:
LOAD DATA LOCAL INFILE 'c:peliculas.txt' INTO TABLE peliculas ; NOTA: si el editor usa \r\n como fin de renglon, entonces usar la orden: LOAD DATA LOCAL INFILE 'c:peliculas.txt' INTO TABLE peliculas LINES TERMINATED BY '\r\n' ; Corrida: image274.jpgObservar que el directorio es ” C: ” usar la doble diagonal y recordar que est metodo les facilitara capturar un lote de renglones a la vez. SQL INSERT (continuacion) Esta instruccion es una de las cuatro operaciones basicas con los renglones o registros de una tabla, las otras operaciones que se veran mas adelante son SELECT, UPDATE y DELETE. Con INSERT se puede insertar o agregar un renglon o registro a la vez, la sintaxis es: INSERT INTO nombretabla (columna1, columna2, ….)** VALUES ( valor1, valor2, …) ; Recordar que los datos o valores deben CORRESPONDER EXACTAMENTE con los campos con los cuales se creo originalmente la tabla.

SQL INSERT
Y RECORDAR TAMBIEN que datos o valores STRINGS deberan proporcionarse encerrados entre el simbolode apostrofes ( ' ).
Ejemplo:
Insert into peliculas (nombrepelicula, tipopelicula, preciopelicula)
values ( 'star wars iv','accion',315.99) ;
Corrida:
image275.jpg
Recordar que INSERT solo carga un renglon a la vez, para insertar mas registros deberan usar mas ordenes insert y recordar que dentro de MYSQL tambien funcionan las teclas de flechas del teclado como HISTORY KEYS.
Tambien es valido usar expresiones algebraicas (incluyendo columnas) en insert.
Ejemplo:
Insert into peliculas (nombrepelicula, tipopelicula, preciopelicula)
values ( 'legalmente rubia', 'comedia' , 18.99 * 11.10) ;
Corrida:
image278.jpg
Como se observa se pueden realizar operaciones directamente, tambien se pueden usar las funciones maMYSQL TEMA ticas que trae incorporado MYSQL.

SQL SELECT
Es la instruccion mas importate de SQL con esta instruccion podemos hacer todo tipo de consultas o preguntas o busquedas a la tabla.
Su formato completo es:
SELECT listacolumnas
FROM nombretabla[s]
WHERE condicion;
El caso mas sencillo es consultar o desplegar toda la tabla completa:
1.- SELECT * FROM PELICULAS;
corrida:
image276.jpg
Tambien se puede desplegar ciertas columnas solamente con :
2.- SELECT nombrepelicula, preciopelicula from peliculas:
corrida:
image277.jpg
Ademas se pueden usar filtros o condiciones para la consulta o despliegue de la tabla agregando la clausula WHERE a la insstruccion SELECT.
Ejemplo:
3.- SELECT * from peliculas WHERE preciopelicula >= 225.00;
corrida:
image279.jpg
Tambien se pueden construir filtros o condiciones compuestas usando los operadores logicos AND OR NOT que tambien trae incorporado MYSQL.
Ejemplo:
4.- SELECT * from peliculas WHERE preciopelicula > 200 AND tipopelicula = 'comedia';
Corrida:
image280.jpg

Tambien se puede ordenar la consulta usando la clausula ORDER BY como se muestra en el siguiente caso:
Ejemplo
5.- SELECT * from peliculas ORDER BY preciopelicula;
corrida:
image281.jpg
Recordar que se puede usar cualquier campo o columna para desplegar la tabla ordenada:
Ejemplo
6.- SELECT * from peliculas ORDER BY nombrepelicula;
corrida:
image282.jpg
Como se observa MYSQL tiene muchas maneras de realizar consultas o QUERY'S.
Para ordenar en forma descendete usar la clausula DESC.
7.- SELECT * from peliculas ORDER BY preciopelicula DESC;
corrida:
image283.jpg

Un elemento muy importante que hace mas valiosas las consultas en MYSQL es la capacidad de reconocimiento de patrones que trae incorporado.
Para esto se usa la clausula LIKE y los siguientes caracteres:
( _ ) Se usa para localizar un caracter sencillo ejemplo _ encuentra la columna que se pida y su valor tiene 3 caracteres, mejor un ejemplo; 8.- SELECT * FROM peliculas WHERE tipopelicula LIKE '_'; corrida: image284.jpg ( % ) Se usa junto con LIKE para encotrar datos o valores de cualquier cantidad de caracteres ejemplos LIKE 'J%' ←- todos los que empiezen con J. LIKE '%ANA' ←- todos los que terminen con ANA LIKE '%JUAN%' ←- todos los que lleven en medio del dato JUAN Ejemplo 9.- SELECT * from peliculas where tipopelicula LIKE 'ac%; corrida:image285.jpg Otro modificador importante es BETWEEN y NOT BETWEEN que nos permite seleccionar un subconjunto de renglones que se encuentran entre de terminado rengo. TABLA INICIAL:image292.jpg 10.- Select * from peliculas where preciopelicula BETWEEN 150 and 350 ;corrida: image293.jpg Este tipo de consulta tambien se puede obtener mediante condiciones compuestas pero MYSQL ya trae incorporado clausulas como la que se esta analizando . Otra clausula importante es IN que nos permite seleccionar renglones que se encuentren en una lista de valores especificada; 11.- select from peliculas where tipopelicula IN ( 'accion' , 'horror'); corrida: image294.jpg Es interesante toda la potencia de la instruccion SELECT de SQL pero recordar que sql significa LENGUAJE ESTRUCTURADO DE CONSULTAS y select es la razon principal. Bueno como se ha dicho antes, mysql es un DBMS ( database management system ) muy poderoso y su especialiad mas fuerte es precisamente QUERYS o CONSULTAS o SELECT.

Fuente:enlace

No hay comentarios:

Publicar un comentario

Entradas populares