Está en la página 1de 6

para crear una base de datos:

create database nombre_de_la_db

Para crear una tabla:

create table nombre_de_la_db.usuario(nombre varchar(10) )

Para eliminar tablas:

drop table nombre_de_la_db.usuario

drop table if exists nombre_de_la_db.usuario

Para insertar registro:

-inserta registro

insert into nombre_de_la_db.usuario(nombre) values('robert')

-Para ver algunos de los registro:

select nombre from nombre_de_la_db.usuario

-Para ver todo los registro:

select * from nombre_de_la_db.usuario

-Para obtener un registro en especifico:

select nombre, clave from nombre_de_la_db.usuario where nombre = 'robert'

-Utilizar los operadores de relacion


igual"=", distinto"<>", mayor ">",
menor "<", mayor o igual ">="
y menor o igual"<=":

select nombre, clave from nombre_de_la_db.usuario where nombre = 'robert'


select nombre, clave from nombre_de_la_db.usuario where nombre =< 1
select nombre, clave from nombre_de_la_db.usuario where nombre => 1
select nombre, clave from nombre_de_la_db.usuario where nombre <> 'robert'
select nombre, clave from nombre_de_la_db.usuario where nombre < 1
select nombre, clave from nombre_de_la_db.usuario where nombre > 1

- eliminar todos los registro:

delete from nombre_de_la_db.usuario

-eliminar un registro en especifico:

delete from nombre_de_la_de.usuario where nombre= "robert"

-actualizar registro cambiar informacion de los


campo

update nombre_de_la_db.usuario set nombre= 'robert nadales' where nombre ='robert'


har
update nombre_de_la_db.usuario set nombre= 'robert nadales', clave 'robert8187'
where nombre ='robert'

-establecer la clave primaria

create table nombre_de_la_db.usuario (nombre varchar(30), clave varchar(10),


primary key (nombre))

-crear un campo de auto incremento

create table nombre_de_la_db.personal (numero int auto_increment, titulo


varchar(10), autor varchar(10), editor varchar(10)
,primary key (numero))

Para vaciar las tablas y para resetear el auto incremento

truncate table nombre_de_la_db.usuario

Para indicar que un campo puede tener valores null

create table nombre_de_la_db.usuario (cedula varchar(10) not null, nombre


varchar(10), apellido varchar(10), primary key(cedula))
insert into nombre_de_la_db.usuario (cedula, nombre, apellido) values('25539911',
null , null)

Para crear un campo que solo acepte numero positivos:

create table nombre_de_la_db.numero(num int unsigned, num1 float unsigned)

Para crear un campo que solo acepte caracteres

create table nombre_de_la_db.texto (letras char(10), letras1 varchar(10), parrafos


blob (1000), parrafos1 text(1000))

campos tipos numericos


int o integer -2000000000 a 2000000000 sin signo 4000000000
mediumint -8000000 a 8000000 sin signo 1600000
smallint -30000 a 30000 sin signo 60000
tinyint -128 a 127 sin signo 0 a 255
bool o boolean o a 1
bigint -90000000000000000000 a 9000000000000000000 sin signo 1000000000000000000000
float(t,d) el primero indica la cantidad de numero y el segundo indica la cantidad
de deciamales
decimal(t,d)"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""
numeric(t,d)"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"""""""""""""
todos los datos numericos aceptan unsigned

Para crear campo con un valor por defecto:

create table nombre_de_la_db.por_defecto (nombre varchar(20) default 'no


especificado', edad tinyint default 18,
precio float(5,2) 230.78 )

para realizar opercaiones matematicas:


select precion,cantida,precion*2, cantida*2 from pruebas.operacione where cantida=4

Para saber que numero ascii tiene un caracter:


select ord('A')
select ord(letras) from pruebas.ascii where numero=3

Para saber que numero ascii representa las letras:

select char(65,66,67)

Para concadenar unas palabras


select concat(cadena1, cadena2)
select concat('hola', ' ', 'hola')

Para separar las cadenas

select concat_ws(' ','juan','pedro','luis')

para saber la posicion de una palabra en una oracion

select find_in_set( 'hola','como estas, hola, buen dia')

Para saber cuantas letras tiene una palabra:

select length('holas')

Para saber cuantas veces se repite una letra en una oracion

select locale('o','como loro')

Operaciones matematicas

-Para realizar diviciones


select 5/3

-Para saber el valor absoluto

select abs(-20)

-Para redondear un numero hacia arriba

select ceiling(12.34) debera salir 13

-Para redondear un numero hacia abajo

select floor (12.34) debera salir 12

-Para saber cual es el numero mas alto


select greates (2,3,4,0)

-Para saber cual es el menor de los numeros


select least(5,3,6,9)

-Para saber el resto de la divicion de 2 numero


select mod(12,2)
select 10%3

-Para elevar un numero


select power(4,2)
-Para obtener un numero real aleatoria entre 0 y 1.0
select rand()

-Para redondear un numero al mas cercano entero


select round (15,50)
select round (15,51)

-Para saber la raiz cuadrada de un valor


select srqt(9)

-Para saber solo cierta cantida de decimales de un numero real


select truncate(2.435545,2)

-Para ordenar los registro de forma desendente


select numero, titulo, autor, editor from pruebas.personal order by autor desc

-Para ordenar los registro de forma acendente


select numero, titulo, autor, editor from pruebas.personal order by autor asc

-Para ordenar por 2 campo o mas


select numero, titulo, autor, editor from pruebas.personal order by titulo desc,
autor asc

Operadores logicos

-Para and que significa "y"


select titulo from pruebas.personal where (autor= 'juan') and (numero= 3)

-Para or que significa "o"


select titulo from pruebas.personal where (autor= 'juan') or (numero= 6)

-Para xor que significa "y/o"


select titulo from pruebas.personal where (autor= 'juan') xor (numero= 6)

-Para not que significa "NO"

select * from pruebas.personal where not (autor= 'juan' or numero= 4 or numero=


2 )

otros operadores relacionales

-Para between que significa "entre"


select * from pruebas.personal where numero between 3 and 6

- Para in que significa "en"


select * from pruebas.personal where numero in( 1,6)

-Para no tener algunos de los datos

select * from pruebas.personal where numero not in( 1,6,5)

Buscadore de patrones
-Para buscar en un campo por una palabra
selecte * from pruebas.personal where titulo like "%juan%"

-Para buscar en un campo por una letra


selecte * from pruebas.personal where titulo like "j%">> %para indicar que despues
de la j haymas letra
selecte * from pruebas.personal where titulo like "%u%" %u para indicar que antes y
depues de la u hay letras
selecte * from pruebas.personal where titulo like "jua_">> por si no se sabe como
termina una palabra se usa _

-Para buscar un campo distinto not like


select * from robert.alumno where color not like 'a%'

-Para remplazar valores con llaves primaria


replace into robert.alumno (1,'maria','ventilador','negro')

-Para buscar un valor los valores de una clave primaria

select nombre, apellido from tabla1 a1(<<alias) inner join tabla2 a2(<<<alisa) on
a1.clave_tabla1= a2.clave_tabla2

select nombre, apellido from tabla1 a1 , tabla2 a2 where a1.clave_tabla1=


a2.clave_tabla2

-para crear in campo autocreciente en derbi


create table datos( numero int generated always as identity (start with 1,
increment by 1) , nombre varchar(15) default 'no indicado', apellido varchar (15)
default 'no indicado',
cedula int default 0, primary key (numero))

-crear viestas
create view nombre_de_lavista as select nombre_De_campo,nombre...,n... from
nombre_de_tabla;

crear trigger

create trigger nombre_de_latabla tiempo_de_la ejecucion(before,after) on


nombre_de_la_tabla
for each row orden (insert into nombre_de_la_tabla (nombre de los campos) values
(valor de los campo));

eliminar trigger
drop trigger nombre_del_trigger;

ver trigger
show triggers;

insertar un registro de una tabla en otra


insert into (nombre de la tabla donde se insectara el valor)<<<sin parentesis<<<
>>>con parentesis(nombre de los campos)
select (nombre de la tabla seleccionada para tomar los datos)<<< """"""""""""<<<
>>>""""""""""""""(nombre de los campos);

crear tabla con los valores de otra tabla

create table (nombre de la ha crear)<<sin parentesis select (nombre de los campos


que se requiere el valor)<<<sin parentesis
as (nombre de los campo de la nueva tabla)<<sina paraentesis from (nombre de la
tabla donde se buscaran los valores)<< sin parentesis;
crear tabla con valores de 2 tablas

create table (nombre de la ha crear)<<sin parentesis select (nombre de los campos


que se requiere el valor)<<<sin parentesis
as (nombre de los campo de la nueva tabla)<<sina paraentesis from (nombre de la
tabla donde se buscaran los valores)<< sin parentesis join (nombre de la otra
tabla) on (el punto de relacion de las tablas);

insert un registro un valor nuevo y de otra


tabla

insert into nombre_tabla (nombre de los campos) select valores_de_los_campo,


nombre_del_campo_de_otra_tabla from nombre_
de_la_otra_tabla where campo_que_con_sida_(ejemplo codigo_producto,codigo_alumno);

insert un registro un valor nuevo y de otras


tablas
insert into nombre_tabla (nombre de los campos) select valores_de_los_campo,
nombre_del_campo_de_otras_tablas from nombre_
de_la_otra_tabla join nombre_de_la_otra_tabla on
( campo_donde_considen_las_tablas(ejemplo: tabla1.codigo=tabla2.codigo))
oooooo puede ser asi tambien para un valor en especifico(tabla1.codigo=1 and
tabla2.codigo=2);