asp fcil - portada
El sitio para programadores ASP 13 de Mayo de 2008
Búsqueda rápida
Ayuda
Secciones
Portada
Diario
Artículos
Código
Trucos
Foros ASP
Recursos
Favoritos
Referencia
Tutorial SQL
SQL-O-Matic
Otras
Boletín ASPFácil
Colabora!
Sobre este sitio
Anunciarse aquí
Cont@ctar
Recomendados
BuscaHost
LoGratis
WebExperto

Patrocinador


Tutorial SQL

Elige tema:   

Recuperar datos

Para recuperar datos, se utiliza la sentencia SELECT.

Básicas

  • SELECT * FROM nombre_tabla
  • Devuelve todos los campos de la tabla.

  • SELECT campo1, campo2, campo3 FROM nombre_tabla
  • Devuelve sólo los campos campo1, campo2, campo3 de la tabla..

  • SELECT campo1, campo2 FROM nombre_tabla ORDER BY campoFecha
  • Devuelve campo1 y campo2 de la tabla y los ordena for fecha ascendente (los más antiguos primero).

  • SELECT campo1, campo2 FROM nombre_tabla ORDER BY campoFecha DESC
  • Devuelve campo 1 y campo2 ordenados por fecha descendente (los más nuevos primero).

  • SELECT DISTINCT Ciudad FROM Empleados ORDER BY Ciudad
  • Devuelve el campo Ciudad de la tabla Empleados con todos los duplicados eliminados (probablemente hay más de un empleado en la misma ciudad: esta sentencia nos devuelve la lista de ciudades).

    Cláusula WHERE

    La cláusula WHERE nos permite especificar un criterio para recuperar los datos.

  • SELECT * FROM nombre_tabla WHERE Ciudad = 'Madrid'
  • Devuelve todos los campos de todas las filas que tengan Madrid en el campo Ciudad.

  • SELECT * FROM nombre_tabla WHERE Ciudad = 'Madrid' AND Edad = 35
  • Devuelve todos los campos de la tabla de las filas en las que Ciudad valga Madrid y Edad sea 35.

  • SELECT * FROM nombre_tabla WHERE campo_numerico >= 150
  • Devuelve los registros con campo_numerico mayor o igual que 150.

  • SELECT campo1, campo2 FROM nombre_tabla WHERE campo_fecha = #2001-2-22#
  • Devuelve campo1 y campo2 de la tabla donde el campo_fecha es del día 22 de Febrero del 2001.

    NOTA: Hay varias formas de especificar una fecha en SQL. Además, los delimitadores (#) para dejar claro que la expresión es una fecha son la almohadilla del ejemplo para Access y las comillas simples (') para SQL Server. El formato aaaa-mm-dd funciona igual de bien en ambos sistemas, por eso lo utilizo.

  • SELECT * FROM nombre_tabla WHERE campo1 LIKE 'Mad%'
  • Devuelve todos los campos de las filas con campo1 comenzando por Mad (Madrid, Madagascar, Madmadmad serían devueltos).

  • SELECT * FROM nombre_tabla WHERE campo1 LIKE '%a'
  • Devuelve todos los campos de las filas con campo1 terminando en a (Málaga, Barcelona, Segovia serían devueltas).

  • SELECT * FROM nombre_tabla WHERE campo1 LIKE '%bruno%'
  • Devuelve las filas en las que campo1 contenga bruno al principio, al final, enmedio o incluso como parte de una palabra.

    Condiciones compuestas

    Podemos especificar varios criterios en la cláusula WHERE.

  • SELECT * FROM nombre_tabla WHERE campo1 = 4500 AND campo_fecha >= # 2000-12-31#
  • Devuelve las filas con campo1 = 4500 y campo_fecha mayor que el 31 de Diciembre de 2000.

  • SELECT * FROM nombre_tabla WHERE campo1 = 'Javier' OR campo1 = 'Carlos'
  • Devuelve las filas con campo1 igual a Javier o Carlos.

  • SELECT * FROM nombre_tabla WHERE salario >= 25000 AND ( vacaciones <= 100 OR jefe = 'Hugo')
  • Devuelve las filas en las que el salario es mayor o igual que 25.000, y o bien tiene 100 días de vacaciones o bien su jefe es Hugo. :-)

  • SELECT * FROM nombre_tabla WHERE vacaciones BETWEEN 25 AND 50
  • Devuelve las filas en las que tengamos entre 25 y 50 días de vacaciones. Es equivalente a WHERE vacaciones >= 25 AND vacaciones <= 50

  • SELECT * FROM nombre_tabla WHERE nombre IN ('Carlos, Efra, Alejo, Erika, Irene, Javier')
  • Devuelve las filas cuyo nombre sea uno de entre Carlos, Efra, Alejo, Erika, Irene o Javier, es decir, cuyo nombre esté en la lista de nombres.

  • SELECT tabla1.nombre, tabla1.departamento FROM tabla1 WHERE tabla1.nombre = tabla2.nombre
  • Devuelve el nombre y departamento de la tabla1 de aquellas filas en las que el nombre coincida con el nombre de la tabla2.

    Funciones de agregado

    Las funciones de agregado permiten hacer operaciones sobre los campos y devolver el resultado de éstas.

  • SELECT MAX(vacaciones) FROM empleados
  • Devuelve el valor más alto del campo vacaciones.

  • SELECT MIN(edad) FROM empleados
  • Devuelve la edad del empleado más joven.

  • SELECT AVG(vacaciones) FROM empleados
  • Devuelve la media (average) del campo vacaciones.

  • SELECT Count(salario) FROM empleados WHERE salario >= 25000
  • Devuelve cuántos empleados tienen un salario mayor o igual que 25000.

  • SELECT SUM(precio) FROM pedidos
  • Devuelve la suma total del precio de todos los pedidos.

    Para utilizar estas funciones de agregado desde ASP a través de un objeto Recordset, tendremos que utilizar el índice para acceder al campo así: rs.Fields(0), o bien dar un alias a la expresión:

    SELECT SUM(precio) AS Suma FROM Pedidos

    Y escribir luego: rs.Fiels("Suma").

    > Acceso a datos
    > ASP General
    > Componentes
    > Diseo de sitios web
    > Email
    > Formularios
    > Pasar datos
    > Script
    Alojamiento
    ASP
    ASP.NET
    Componentes y Objetos COM
    Diseo grfico
    Documentacin oficial
    HTML y CSS
    Javascript y DHTML
    Linux
    Otros
    XML
    W3C

    © ASP Fcil 2000-2004 excepto en casos indicados
    El mejor alojamiento web en acens