19 enero 2012

SQL algunos comandos


SELECT * FROM `usuario` ; select nombre from usuario where edad = 18;
SELECT * FROM `usuario`; select nombre,edad  from usuario where edad = 18;
SELECT * FROM `usuario`; select nombre from usuario where nombre='francisco';
                                              ;select nombre from usuario where nombre='francisco';
                                                select nombre from usuario where nombre='francisco';
 SELECT * FROM `usuario` ; select nombre from usuario where edad>20;
delete * FROM `usuario`where nomre='francisco';
delete * FROM `usuario`where nombre='francisco'
delete * FROM `usuario`where nombre='francisco';
delete FROM `usuario`where nombre='francisco';
delete FROM `usuario`where nombre='francisco';
update usuario set apellido='marrrique' where nombre='karina';
update usuario set edad='16' where nombre='karina';
update usuario set nombre='alex' where apellido='pulido';
update usuario set nombre='alexander' where apellido='pulido' edad ='13';
create table estudiantes (cedula varchar (8), nombre varchar (20), apellido varchar (20),primary key (cedula));
truncate table nombre de la base de datos;para vaciar la tabla
null = que existe
no null= que existir algo.
Vacio =
unsigned= que no puede ser ejemplo edad unsigned que significa sin signo,
 como  agregar campo a una tabla
alter table estudiantes add int noy null;
alter table usuario add cedula int not null;
insertyar un re3gistro
insert into usuario (nombre, apellido, edad, cedula)  values('alfredo','altunn','11','14022215');
para borrar campos de una tabla:
alter table estudiate drop cedula
alter table estudiantes drop edad;
CAMBIAR EL NOMBRE DE UN CAMPO
alter table estudiantes change apellido apodo varchar (20);
agregar un campo cleve lleva
alter table usuario add primary key ()
alter table usuario add primary key (cedula);
para eliminar la clave primaria de un campo.
alter table usuario drop  primary key ;
renombrar una tabla
rename table usuario to cliente;
consulta limitada de registro:
select * from cliente limit 4;
select * from cliente limit 3,6;
select * from cliente limit 4;
consulta aleatoria de registro:
select * from cliente orden by rand() limit 3;ojo sin dejar espacios en la funcion.
Para eliminar una base de datos:
drop database  nombre de la base de datos.
Tabla y especificaciones
create table libros(codigo int unsigned auto_increment,titulo varchar (40)not null,autor varchar (30) not null default 'desconocido', codigoeditorial tinyint unsigned not null,precio decimal (5,2) unsigned,cantidad smallint unsigned default 0,primary key (codigo) );

tinyint=ramgo -128+127
smallint=-30000
+30000


tabla de una bas e de datos
insert into libros (titulo,codigoeditorial,precio,cantidad)values('la culpa no es de la vaca', 'manos cristalina','25','200' );
insert into libros (titulo,codigoeditorial,precio,cantidad)values('la culpa no es de la vaca','10022', 'mampron','25,20','200' );
insert into libros (titulo,codigoeditorial,precio,cantidad)values('vaca', '100','25,21','200' );
create table editorial (codigo tinyint unsigned auto_increment,nombre varchar (20)not null, primary key (codigo);
create table editorial (codigo tinyint unsigned auto_increment,nombre varchar (20) not null, primary key (codigo));





Se encontraron errores al procesar:
 libgd2-xpm_2.0.36~rc1~dfsg-5_i386.deb
 kdelibs4c2a
 kfilereplace
 klinkstatus
 kommander
 kompare
 kxsldbg
 libcvsservice0
 quanta
 cervisia


eliminar un registro de una tabla
delete FROM `libros`where titulo='la cula no es de la vaca';
delete FROM `libros`where titulo='la culpa no es de la vaca';
insertar registro
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('la iliada', 'homero','1','12.00','5');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('la odisea', 'homero','1','10.00','3');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('el quijote', 'cervantes','2','15.40','3');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('doña barbara', 'romulo gallegos','3','25.40','8');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('java en 10 minutos', 'mario molina','2','25.50','6');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('la galetea', 'cervantes','5','8.00','7');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('cien años de soledad', 'gabriel garcia marquez','2','26.00','5');
insert into libros (titulo,autor,codigoeditorial,precio,cantidad) values('la gitanilla', 'cervantes','2','30.00','5');

insert into editorial (nombre) values ('santillana');
insert into editorial (nombre) values ('voluntad');
insert into editorial (nombre) values ('planeta');

consulta con condicional
select * from libros  where (autor='homero') and (precio<20);
select * from libros  where (autor='cervantes') and (precio>20);
select * from libros  where (titulo='doña barbara') and (precio>20);
select * from libros  where (titulo='doña barbara') or (precio>20);
select * from libros  where (titulo='doña barbara') or (precio<20);

otra consulta
autor homero o cervantes
select * from libros  where (autor='homero' or autor='cervantes') and (precio<15);

consulat por rango
select * from libros  where precio between  0 and 15;

between=ramgo de una consulta

contar registro  de una tabla=

select count(*)  from libros;

contar registro  de una tabla=

select count(*)  from libros where (autor='homero');

hallar un valor maximo:
select max(precio)  from libros;
select min(precio)  from libros;

sumar el precio de los libro de homero=
select sum(precio)  from libros where (autor='cervantes');

registro repetidos
select count(distinct cantidad ) from libros;

remplazar cierta información del registro:
replace into libros values (7,'el general','marquez','1','26,30','7');

modificar un tipo de datos a un compa existente
alter table libros modify titulo varchar (40);
consulta con el comando if.
Y es mayor de 20 es caro
y si es menor de 20 es barato
select  titulo, if(precio>20,'caro','economico') from libros;

filtar una busque por cantidad y por autor
select autor, if(count(*)>1,'hay mas de 1', 'solo hay 1') from libros  group by autor;


unir 2 tablas :
select * from libros join editorial;
select * from libros join editorial on libros.codigo=editorial.codigo ;
select * from libros join editorial on libros.codigoeditorial=editorial.codigo ;

crear una tabla con datos de otras tabla.
Create table inventario select distinct autor as escritor, titulo as nombre , cantidad as existencia from libros