Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SQL COmandos PDF
SQL COmandos PDF
Madrid,Noviembre,2728,2006
SQLbsico
CarlosRodrigoBlanco
LAEFFINTA
crb@laeff.inta.es
QuesSQL
Ellenguajedeconsultaestructurado(SQL)esun
lenguajedebasededatosnormalizado,utilizadopor
losdiferentesmotoresdebasesdedatospararealizar
determinadasoperacionessobrelosdatososobrela
estructuradelosmismos.
CarlosRodrigoBlanco SQLbsico,Pgina2
Mysql:ungestordeBD
Ungestordebasededatos.
Sencillo
Gratuito
Rpidoyeficiente.
Paralinux/windows
CarlosRodrigoBlanco SQLbsico,Pgina3
Unabasededatos
Unconjuntodetablas
relacionadasentres:
Unapeadeun
equipodeftbolen
internet.
CarlosRodrigoBlanco SQLbsico,Pgina4
Consultarlabasededatos
SELECT...FROM...WHERE...etc
SELECT(campos)FROM(tablas)WHERE(condiciones)...
CarlosRodrigoBlanco SQLbsico,Pgina5
Consultarlabasededatos
SELECT
[ALL|DISTINCT|DISTINCTROW]
select_expr,...
[FROMtable_references
[WHEREwhere_condition]
[GROUPBY{col_name|expr|position}]
[HAVINGwhere_condition]
[ORDERBY{col_name|expr|position}
[ASC|DESC],...]
[LIMIT{[offset,]row_count|row_countOFFSEToffset}]
[INTOOUTFILE'file_name'export_options]
CarlosRodrigoBlanco SQLbsico,Pgina6
SELECT:ejemplos
SELECTsocio_id,nombre,emailFROMsociosWHEREpais_id=14;
SELECTsocio_id,nombre,emailFROMsociosWHEREnombrelike'Alicia%';
CarlosRodrigoBlanco SQLbsico,Pgina7
SELECT:ejemplos
SELECTcount(*)FROMsocios;
SELECTpais_id,count(*)asnsociosFROMsocios
groupbypais_idorderbynsociosdesclimit10;
CarlosRodrigoBlanco SQLbsico,Pgina8
SELECT:ejemplos
SELECTsocio_id,nombre,email,pais_idFROMsociosWHEREnombrelike'Alicia%';
SELECTs.socio_id,s.nombre,s.email,p.nombreaspais
FROMsocioss,paisesp
WHEREp.pais_id=s.pais_idands.nombrelike'Alicia%';
CarlosRodrigoBlanco SQLbsico,Pgina9
SELECT:ejemplos
SELECTpais_id,count(*)asnsocios SELECTp.nombreaspais,count(*)asnsocios
FROMsocios FROMsocioss,paisesp
groupbypais_id WHEREp.pais_id=s.pais_id
orderbynsociosdesc groupbyp.pais_id
limit10; orderbynsociosdesc
limit10;
CarlosRodrigoBlanco SQLbsico,Pgina10
SELECT:ejemplos
SELECTp.nombreaspais,count(*)asnsocios
FROMsocioss,paisesp
WHEREp.pais_id=s.pais_id
groupbyp.pais_id
HAVINGnsociosbetween10and20
orderbynsociosdesc
limit10;
CarlosRodrigoBlanco SQLbsico,Pgina11
Cambiarlosdatos
UPDATE...SET...WHERE...
UPDATE(tabla)SET(campo=valor)WHERE(condiciones)...
CarlosRodrigoBlanco SQLbsico,Pgina12
Cambiarlosdatos
UPDATEtbl_name
SETcol_name1=expr1[,col_name2=expr2...]
[WHEREwhere_condition]
[ORDERBY...]
[LIMITrow_count]
CarlosRodrigoBlanco SQLbsico,Pgina13
UPDATE:ejemplos
UPDATEsociosSETpais_id=162WHEREsocio_id=1;
CarlosRodrigoBlanco SQLbsico,Pgina14
UPDATE:ejemplos
UPDATEsociosSETemail=LOWER(email);
UPDATEsociosSETpuntos=puntos+2WHEREpuntos<2;
CarlosRodrigoBlanco SQLbsico,Pgina15
InsertarDatos
INSERTINTO...(...,...)VALUES(...,...)
INSERTINTO(tabla)(campo1,...,campoN)VALUES
(valor1,...,valorN)...
INSERTINTO...SET...
INSERTINTO(tabla)SET
campo1=valor1,...,campoN=valorN
CarlosRodrigoBlanco SQLbsico,Pgina16
InsertarDatos
INSERTINTOsocios
(socio_id,email,pais_id,provincia_id,nombre)
VALUES(7000,'pepe@austria.com',14,0,'PepeMartnez');
CarlosRodrigoBlanco SQLbsico,Pgina17
BorrarDatos
DELETEFROM...WHERE...
DELETEFROMtablaWHEREconditions
DELETEFROMsociosWHEREsocio_id=7000;
CarlosRodrigoBlanco SQLbsico,Pgina18
VerlaestructuradelaBasedeDatos
SHOWTABLES
CarlosRodrigoBlanco SQLbsico,Pgina19
VerlaestructuradelaBasedeDatos
DESCtabla
CarlosRodrigoBlanco SQLbsico,Pgina20
Crearunatabla
CREATETABLE...(...)
CREATETABLE[IFNOTEXISTS]tbl_name(
col_name1data_typeoptions,
...
col_nameNdata_typeoptions,
);
CarlosRodrigoBlanco SQLbsico,Pgina21
Crearunatabla
data_type:
INT[(length)][UNSIGNED][ZEROFILL]
DOUBLE[(length,decimals)][UNSIGNED][ZEROFILL]
DATE
TIMESTAMP
VARCHAR(length)
TEXT
BLOB
ENUM(value1,value2,value3,...)
CarlosRodrigoBlanco SQLbsico,Pgina22
Crearunatabla
Options:
[NOTNULL|NULL]
[DEFAULTdefault_value]
[AUTO_INCREMENT]
[UNIQUE[KEY]|[PRIMARY]KEY]
[COMMENT'string']
CarlosRodrigoBlanco SQLbsico,Pgina23
Crearunatabla
CREATETABLEsocios(
socio_idint(7)NOTNULLAUTO_INCREMENT,
nombrechar(255)NOTNULLdefault''
emailchar(69)NOTNULLdefault'',
pais_idint(4)NOTNULLdefault'0',
provincia_idint(4)NOTNULLdefault'0',
);
CarlosRodrigoBlanco SQLbsico,Pgina24
Cambiarunatabla
ALTERTABLE...[...]
ALTERTABLEtablename...
ADD[COLUMN]column_definition
CHANGE[COLUMN]old_col_namecolumn_definition
DROP[COLUMN]col_name
RENAME[TO]new_tbl_name
...
ADD{INDEX|KEY}[index_name][index_type]
(index_col_name,...)
ADDPRIMARYKEY[index_type](index_col_name,...)
ADDUNIQUE[INDEX|KEY][index_name][index_type]
(index_col_name,...)
CarlosRodrigoBlanco SQLbsico,Pgina25
Eliminarunatabla
DROPTABLE...
DROPTABLE[IFEXISTS]tablename...
[IFEXISTS]
CarlosRodrigoBlanco SQLbsico,Pgina26
Mysql:aplicaciones
CarlosRodrigoBlanco SQLbsico,Pgina27