-- sentencias sql para consultar los datos -- Leer -- SELECT campo1,campo2,... | * FROM nombre_tabla [WHERE condicion] USE sanpatras; -- Nombre y apellidos de todos los pacientes SELECT nombre,apellidos FROM paciente; -- Asterisco es igual a todos los campos SELECT * FROM paciente; -- Podemos utilizar el nombre de la base de datos como prefijo SELECT * FROM sanpatras.paciente; -- Muestra todos los campos de los pacientes cuyo teléfono es '666' SELECT * FROM paciente where telefono='666'; -- =, <, <=, >,>=, <> -- Con el id igual a 1 SELECT * FROM medico where idmedico=1; -- Con el id mayor que 5 SELECT * FROM medico where idmedico>5; -- Con el id diferente de 1 SELECT * FROM medico where idmedico<>1; -- Entre un rango puedo usar comparadores normales o BETWEEN SELECT * FROM medico where idmedico>=2 and idmedico<=5; SELECT * FROM medico where idmedico between 2 and 5; -- Lo mismo para cadenas SELECT * FROM medico where nombre>='l'; SELECT * FROM medico where nombre between 'l' and 'n'; -- Médicos que se llamen Miguel Y su id sea mayor que 7 SELECT * FROM medico where nombre='Miguel' AND idmedico>7; -- Médicos que se llamen Miguel O se llamen Laura SELECT * FROM medico WHERE nombre='Miguel' OR nombre='Laura'; -- Médicos que NO se llamen Miguel SELECT * FROM medico WHERE NOT nombre='Miguel'; -- Precedencia de operadores: NOT AND OR -- En la sentencia siguiente primero se evalua el AND y después el OR -- El resultado no es el esperado SELECT * FROM medico WHERE nombre='Miguel' OR nombre='Laura' AND especialidad='Neurología'; -- Lo tendríamos que reescribir así: SELECT * FROM medico WHERE (nombre='Miguel' OR nombre='Laura') AND especialidad='Neurología'; -- Aquí no hacen falta parentesis pero si lo ponemos no pasa nada SELECT * FROM medico WHERE (idmedico>2 and idmedico<12) OR nombre='Ana'