Desglose simple de la sintaxis del SQL

Este articulo corresponde a la continuación del anterior
Aprende SOL usando Excel como puente

Editor

El SQL es muy profundo y hay muchas maneras de ajustar las consultas, pero lo que les he mostrado arriba elimina la mayor parte.
Es bastante fácil leer las consultas anteriores que escribí. Seleccionar significa seleccionar, el * significa todos los campos, desde identifica la tabla en la que quiero seleccionar todo.
Por ejemplo, quiero seleccionar todos los campos/columnas de la tabla de clientes, así que escribiré:

select * from customers

En la última tabla de arriba, saqué datos de otras tablas en el registro de compras y cambié el nombre de los campos. La consulta es ligeramente más complicada que usar un «seleccionar todo» para ver una tabla. No hay necesidad de preocuparse, la descompondré de manera que sea digerible.
Nuestra consulta:

select purchase_log.id, time, concat(firstname,' ' ,lastname) as 'customer full name', item as fruit
from purchase_log
inner join customers on purchase_log.customer_id = customers.id
inner join items on purchase_log.item_id = items.id
order by id asc
  • Tenemos una cláusula selectiva, igual que antes, pero esta vez con algunas tonterías adicionales.
  • Hay una cláusula «de», que permanece sin cambios.
  • Dos cláusulas de unión interna y una de orden. ¿Eh?
[table].[field]

En nuestras consultas anteriores, porque estábamos usando *, simplemente seleccionábamos todos los campos. Si nuestra consulta está aislada en una tabla, podemos seleccionar los campos que queremos escribiéndolos y separarlos con una coma.

select item, price from items

Esto nos daría sólo una tabla con los artículos y sus precios, sin sus identificaciones.
Sin embargo, esta consulta obtiene datos de diferentes tablas, y a veces los campos de esta tabla tienen el mismo nombre, como «id». Por lo tanto, tenemos que especificar qué id es el que queremos.

purchase_log.id, customer.id, purchase_log.customer_id

Lo anterior dice lo siguiente –
campo de identificación de la tabla «purchase_log»,
campo de identificación de la mesa del cliente,
campo customer_id de la tabla purchase_log

La unión interna es la unión dentro de la unión del índice

Esto nos permite pegar dos tablas diferentes usando columnas que tienen valores coincidentes.

inner join clients on purchase_log.customer_id = clients.id


Traduciendo esto a un lenguaje sencillo: Quiero usar los datos de la tabla de clientes en mi tabla actual (purchase_log) y puedo hacerlo porque el ID de cliente en esta tabla existe en ID en la tabla de clientes.
Los datos reales que desea utilizar de la tabla unida se añadirán a la sentencia select.
Tener esto a mano le permitirá sacar cualquier cosa que desee de una base de datos y mantenerla en una sola tabla.

Haciendo ajustes dentro de las tablas

Las declaraciones y funciones de uso común que se incluyen en mi consulta para hacer modificaciones en la forma en que se etiquetan los datos:

  • ordenados por es su propia declaración el equivalente a una clase en Excel.
    orden por [campo] desc = Ordenación de Z a A
    orden por [campo] asc = Ordenación de la A a la Z
  • como es una forma simple de nombrar una columna a otra cosa.
    seleccione [campo] como [nombre que desea dar]
  • concat es la misma función que CONCAT() en excel. Si quiere combinar varias columnas en una declaración de selección, simplemente escriba:
    seleccione concat([campos],[i],[quiere],[combinado]) como [nombre]

Ahí lo tenemos. ¡Ahora puedes sacar datos como quieras de una base de datos y hacer modificaciones en la forma de etiquetarlos!
Aunque soy un leal fan de Excel por haberme ayudado en los comienzos de mi carrera, he añadido mucho a mi pila de herramientas. La madriguera del conejo a SQL es mucho más profunda y espero que esta introducción pueda inspirarte a explorarla.

Deja un comentario

Diseña un sitio como este con WordPress.com
Comenzar