Você está na página 1de 14

D i s t a n c i a d e un p u n t o a u n a r ec t a

L a d i s t a n ci a d e u n p u n t o a u n a r e c t a e s l a l o n g i t u d d e l s eg m en t o p e r p e n d i cu l a r a l a r e c t a, t r a z ad a d e s d e e l p u n t o .

E j e mp l o C a l c u l a l a d i s t a n ci a d el p u n t o P ( 2 , - 1 ) a l a r e c t a r d e e c u a c i n 3 x + 4 y = 0.

D I V I S I O N D E U N S E G M E N T O E N U NA R A Z O N D A D A

D iv id ir

un

s eg me n t o

AB

en

una

r e l ac i n

d ad a

es

d e t e rm i n a r u n p u n t o P d e l a r e c t a q u e c o n t ie n e a l s e g m e n t o

A B, de modo q ue la s d os pa rtes , PA y PB, e st n e n la re lac in r:

E j e mp l o

Q u p u n t o s P y Q d i v i d e n al s e g m e n t o d e e x t r e m o s A ( - 1 , 3 ) y B ( 5 , 6 ) e n t r es p a r t es i g u a l es ?

S i l a s c o o rd e n a d a s d e l o s p u n t o s e x t r e m o s , A y B , s o n :

L a s c o o r d e n ad a s d el p u n t o m ed i o d e u n s eg m e n to c o i n c i d e n c o n l a s e m i s u m a d e l a s c o o r d e n ad as d e d e l o s p u n t o s e x t r em o s

R e c t as p a r a l e l a s

D o s r e c t a s s o n p a r a l e l as s i t i e n e n e l mismo v ector d ir ector o la mis ma p endiente.

R e c t as p e r p en d i c u l a re s

S i d o s r e c t as s o n p er p e n d i c u l ar e s t i e n e n s u s p en d i e n t es i n v er s as y c a mb i ad a s d e s i g n o .

D o s r e c t as s o n p er p en d i c u l a r e s s i s u s v e c t o r es d i r e c t o r es s o n p e r p e n d i cu l a r es .

S e l l a m a n g u l o d e d o s re c t a s a l m e n o r d e los ng ulos q ue forma n s ta s . Se p ue de n ob te ne r a pa rtir de :

1 S u s v e c t o re s d i r e c t o re s

2 S u s p e n d ie n t e s

SQL: 1. CREATE DATABASE pruebas;

Usar una base de datos


PLAIN TEXT SQL: 1. USE pruebas;
mysql> use prueba; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A

Ver estructura de una tabla de datos


PLAIN TEXT SQL: 1. DESCRIBE Alumnos ;
mysql> describe alumnos; +-----------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+-------+ | Id | int(11) | YES | | 0 | | | nombre | varchar(10) | YES | | NULL | | | apellidos | varchar(30) | YES | | NULL | | | tlfn | int(10) | YES | | NULL | | +-----------+-------------+------+-----+---------+-------+ 4 rows in set (0.00 sec) mysql>

Ver tablas de datos


SQL: 1. SHOW TABLES;
mysql> show tables; +------------------+ | Tables_in_prueba | +------------------+ | Notas | | alumnos | | mascotas |

+------------------+ 3 rows in set (0.00 sec)

Borrar tabla de datos


PLAIN TEXT SQL: 1. DROP Notas;

Crear una tabla de datos


PLAIN TEXT SQL: 1. CREATE TABLE Alumnos( 2. id INT NOT NULL, 3. nombre VARCHAR (10) NOT NULL, 4. apellido VARCHAR (10) NOT NULL, 5. telefono LONG, 6. CONSTRAINT alumnosPk1 PRIMARY KEY (id) 7. ); 8. 9. CREATE TABLE Notas( 10. id INT NOT NULL, 11. modulo VARCHAR (10) NOT NULL, 12. parcial INT NOT NULL, 13. nota INT NOT NULL CHECK (VALUE BETWEEN 1 AND 10), 14. CONSTRAINT notasPk1 PRIMARY KEY (id, modulo), 15. CONSTRAINT notasfk1 FOREIGN KEY (id) REFERENCES Alumnos(id) ); 16.

Insertar datos en una tabla de datos


PLAIN TEXT SQL: 1. INSERT INTO Alumnos VALUES(1 ,juan,garcia,949494949 ); 2. INSERT INTO Alumnos VALUES(2 ,maria,alvarez,); 3. INSERT INTO Alumnos VALUES(3 ,carlos,perez,6458544 ); 4. INSERT INTO Alumnos VALUES(4 ,alberto,jimenez,); 5. INSERT INTO Alumnos VALUES(5 ,vanesa,galera,912552522 );

6. INSERT INTO Alumnos VALUES(6 ,sergio,molina,5464465656 ); 7. INSERT INTO Alumnos VALUES(1 ,juan,garcia,94949 ); 8. INSERT INTO Alumnos VALUES(2 ,maria,alvarez,0 ); 9. INSERT INTO Alumnos VALUES(3 ,carlos,perez,6454 ); INSERT INTO Alumnos 10. VALUES(4 ,alberto,jimenez,0 ); INSERT INTO Alumnos 11. VALUES(5 ,vanesa,galera,9125 ); 12. INSERT INTO Alumnos VALUES(6 ,sergio,molina,5464 );

Visualizar datos en una tabla de datos


PLAIN TEXT SQL: 1. SELECT * FROM Alumnos;

Visualizar datos seleccionados en una tabla de datos


Usamos la sentencia WHERE: PLAIN TEXT SQL: 1. SELECT * FROM Alumnos 2. WHERE (id> 5 AND (nombre=alberto);
mysql> SELECT * FROM alumnos WHERE id < 5 AND nombre="Alberto"; +------+---------+-------------------+-----------+ | Id | nombre | apellidos | tlfn | +------+---------+-------------------+-----------+ | 1 | Alberto | Jimenez********** | 67922**** | +------+---------+-------------------+-----------+ 1 row in set (0.00 sec)

Visualizar datos seleccionados en una tabla de datos, por orden


Usamos la sentencia ORDER BY, si no indicamos parmetros es ascendente, el contrario es DESC PLAIN TEXT SQL:

1. 2. 3. 4.

SELECT apellido, nombre FROM Alumnos ORDER BY apellido, nombre ;

Visualizar datos seleccionados en una tabla de datos: AND Y OR


Ejemplo con AND y OR: PLAIN TEXT SQL: 1. SELECT Alumnos.id, nombre, apellido, telefono, modulo, parcial, nota 2. FROM Alumnos,Notas 3. WHERE ((Alumnos.id = Notas.id) AND (modulo LIKE sistemas)) OR ((modulo LIKE analisis) AND (nota&gt; 5)) 4. ORDER BY Alumnos.id,modulo;

Visualizar datos seleccionados en una tabla de datos sin repetirse


Usamos la sentencia DISTINCT: PLAIN TEXT SQL: 1. SELECT DISTINCT modulo 2. FROM Notas 3. WHERE nota&gt; 5;

Visualizar datos seleccionados en una tabla de datos contndolos


Usamos la sentencia COUNT: PLAIN TEXT SQL: 1. SELECT COUNT(nota) 2. FROM Notas;

mysql> select count(nota) FROM Notas; +-------------+ | count(nota) | +-------------+ | 8 | +-------------+ 1 row in set (0.03 sec)

Renombrar nombre de tablas alias


Usamos la sentencia AS: PLAIN TEXT SQL: 1. SELECT modulo,avg(nota) AS media 2. FROM Notas AS n 3. WHERE n.id=3 OR n.id=1 OR n.id=2 4. GROUP BY modulo 5. ORDER BY media DESC;
+--------+--------+ | modulo | media | +--------+--------+ | ASI | 9.0000 | | DAI | 7.7143 | +--------+--------+ 2 rows in set (0.05 sec)

Visualizar datos seleccionados en una tabla de datos, su mximo, mnimo, media y suma
Usamos las sentencias MAX, MIN ,AVG y SUM: PLAIN TEXT SQL: 1. SELECT MAX(nota) 2. FROM Notas 3. WHERE id=1; 4. 5. SELECT AVG(nota) 6. FROM Notas 7. WHERE id=1; 8. 9. SELECT MIN(nota) 10. FROM Notas; 11.

12. 13. 14. 15. 16. 17.

SELECT AVG(nota) AS media FROM Notas WHERE modulo = analisis; SELECT SUM(nota) AS Suma FROM Notas;

Borrar datos de una tabla


PLAIN TEXT SQL: 1. DELETE * FROM Notas WHERE condicion; PLAIN TEXT SQL: 1. 2. 3. 4. DELETE * FROM Notas WHERE condicion; SELECT a.id, a.nombre, n.modulo, n.nota FROM Alumnos a ,Notas n WHERE a.id = n.id ;

Sentencia LIKE
En entornos no unix los operandos especiales son: * y ? * Una o varias apariciones ? Una o ninguna apariciones En entornos unix: % y _ % Una o varias apariciones _ Una o ninguna apariciones PLAIN TEXT SQL: 1. SELECT * 2. FROM Alumnos,Notas 3. WHERE Alumnos.id = Notas.id AND modulo LIKE %sistemas OR modulo LIKE 00_%Diurno 4. ORDER BY apellido;
mysql> select nombre from Personas where nombre like "%, J%"; +---------------------+ | nombre | +---------------------+ | HERRERO, JOSE | | DE LA ROSA, JULIAN |

| FERNANDEZ, JUAN | | MOTOS, JUAN | | ARNAZ, JOSE ANTONIO | +---------------------+ 5 rows in set (0.02 sec)

Operando bsicos
< Menor que > Mayor que >= Mayor o igual <= Menor o igual != Distinto de

Sentencia SubStr e InStr


SubStr se usa para seleccionar una determinada cadena de texto, por el contrario InStr devuelve un nmero entero donde encuentra el caracter buscado dentro de una cadena de texto. PLAIN TEXT SQL: 1. SELECT SUBSTR(nombre, INSTR(nombre, ,)+2) Nombre 2. FROM Personas;
mysql> SELECT SUBSTR(nombre, INSTR(nombre, ',')+2) Nombre -> FROM Personas; +--------------+ | Nombre | +--------------+ | CARLOS | | ALVARO | | GUILLERMO | | SANTIAGO | ... | JOSE ANTONIO | | PABLO | +--------------+ 47 rows in set (0.40 sec)

Sentencia Between
Para evitar hacer repeticiones tales como: AND ((nota >= 5) AND (nota <= 8)); Se usa between: PLAIN TEXT

SQL: 1. SELECT nombre, apellido, modulo, nota 2. FROM Alumnos, Notas 3. WHERE (Notas.id = Alumnos.id) AND (nota BETWEEN 5 AND 8);

Sentencia Round
Sirve para redondear, le podemos indicar cuantos decimales incluiremos. PLAIN TEXT SQL: 1. SELECT ROUND(AVG(importe), 2) 2. FROM Multas;
mysql> select ROUND(AVG(importe),2) REDONDEO from Multas; +----------+ | REDONDEO | +----------+ | 199.09 | +----------+ 1 row in set (0.00 sec)

Sentencia Count
Sirve para contar. Podemos usar el * para que el motor nos escoja la opcin o ponerlos nosotros mismos. PLAIN TEXT SQL: 1. SELECT count(*) NUMERO DE MULTAS 2. FROM Multas;
mysql> select count(ref) "NUMERO DE MULTAS" from Multas; +------------------+ | NUMERO DE MULTAS | +------------------+ | 35 | +------------------+ 1 row in set (0.00 sec)

Subselects con IN o NOT IN

Podemos hacer subselects en una misma lnea pudiendo restringir mucho ms los datos a seleccionar: PLAIN TEXT SQL: 1. 2. 3. 4. 5. SELECT DISTINCT nombre, apellido FROM Alumnos WHERE id IN ( SELECT DISTINCT id FROM Notas WHERE nota&gt;=5 ) ;

PLAIN TEXT SQL: 1. SELECT nombre,apellido 2. FROM Alumnos AS A, Notas AS N 3. WHERE (A.id = N.id) AND (N.nota&gt; ( SELECT AVG(nota) FROM Notas ) ) ; Si necesitamos hacer muchas selecciones como IN solo devuelve un campo tenemos que hacer GROUP BY: PLAIN TEXT SQL: 1. 2. 3. 4. SELECT MAX(resultado.Suma) AS Maximo FROM (SELECT modulo, SUM(nota) AS Suma FROM Notas GROUP BY modulo) resultado ;

Você também pode gostar