sql >> Base de Datos >  >> RDS >> Sqlserver

Glosario de consultas de SQL Server:un cambio de palo para administradores de bases de datos

¿Alguna vez ha comparado su trabajo como administrador de una base de datos con SQL para cambiar de marcha con una transmisión manual? En un mundo conquistado hace mucho tiempo por la interfaz gráfica de usuario (GUI), SQL es una de las pocas formas que quedan para que un administrador de bases de datos pueda remar una palanca de cambios a través de los engranajes informáticos y realizar un trabajo real.

Como DBA, puede estar orgulloso de esa conexión. Considere esto, por ejemplo.

Cambiar de marcha y escribir consultas de SQL Server

Supongamos que está en la universidad y necesita encontrar un trabajo. Así que puedes comer y esas cosas. Ves un anuncio de una sandwichera en una tienda de delicatessen en la ciudad, por lo que decides saltarte la clase y aplicar. Caminas hacia la tienda y haces fila en la acera detrás de las otras 19 personas que faltaron a clase para postularse. Los solicitantes siguen entrando y saliendo sin trabajo.

"Debe ser una entrevista difícil", te dices a ti mismo.

Finalmente, es tu turno de entrar. El dueño de la tienda de sándwiches tiene una prioridad.

"¿Puedes conducir una transmisión manual?" ella pregunta.

No te esperabas eso, ¿verdad? Pero tienes la respuesta correcta en el momento correcto.

"Por supuesto. Aprendí en un Ford Explorer '99 con cinco en el piso y un embrague salpicado. ¿No lo hicieron todos?”

“No”, dice el dueño. “Tendrás que hacer las entregas por nosotros, y nuestro camión tiene una palanca. Una pregunta más:¿Qué tipo de carne va en un sándwich de pavo?”

Titubeas por un minuto (siendo vegetariano) y luego haces una suposición descabellada que resulta ser correcta.

“Tienes el trabajo”, dice el dueño. "¿Cuándo puedes empezar?"

Puede que haya sido un toque y listo con la cuestión de la carne, pero su pedigrí de caja de cambios manual le sirvió bien en la tienda de delicatessen y continúa sirviéndole bien como un DBA de cambios de palanca y de núcleo duro. No es para ti el movimiento rápido de un PRNDL con muerte cerebral al que no le importa si tu mano está sobre él o no.

Es gratificante para usted poder abrir un editor de SQL Server Management Studio e introducir algunos comandos T-SQL. En poco tiempo, puede generar una gran lista de información valiosa extraída de las entrañas de una base de datos de SQL Server en algún lugar.

Glosario de consultas de SQL Server

Y, como DBA que se respeta a sí mismo, probablemente tenga un puñado de consultas favoritas de SQL Server que guarda en su bolsillo trasero. Piense en ellos como un glosario de consultas de SQL Server que extrae y extrae cada vez que alguien necesita datos específicos con urgencia.

Combinar los resultados de dos consultas de SQL Server en una

Un analista de datos entra saltando a su oficina, con el pelo en llamas, y le ruega que le proporcione una lista de clientes, sus direcciones de correo electrónico y sus pedidos recientes para una promoción en línea que la empresa realizará mañana.

"No te preocupes", respondes con calma. "Estará en su bandeja de entrada cuando regrese a su escritorio".

Abre una nueva ventana en su editor de consultas y escribe un par de declaraciones rápidas:

SELECT email FROM Customers UNION SELECT item FROM Orders

Guarde la nueva tabla, envíela por correo electrónico a Hair-on-Fire y vuelva al trabajo.

Uso de comodines

El ME GUSTA La palabra clave, si se usa con cuidado con comodines, es un miembro formidable de su glosario. Además, puede brindarle muchos resultados por tan poco dinero en sintaxis. Con solo 47 caracteres de SQL, puede enumerar y examinar todas las filas de una tabla Clientes para los clientes cuyo apellido comienza con "Rob", como se muestra aquí:

SELECT * From Customers WHERE Lastname LIKE 'Rob%'

La lista resultante incluirá a Robbins, Roberts, Robertson, Robinson, etc.

Intercambiar valores entre columnas en una tabla

¿Alguna vez importó una base de datos de 100 000 registros y luego se dio cuenta de que había asignado campos incorrectamente? Por supuesto no. Pero los datos suceden, y uno de sus compañeros de trabajo está obligado a cometer ese error tarde o temprano.

Imagine que los campos de código postal y número de teléfono se trasponen durante su operación de importación. En lugar de desechar la tabla y volver a ejecutar la importación, puede usar UPDATE y SET para solucionar el problema:

UPDATE Customers SET Zip=Phone, Phone=Zip

Extracción de columnas de una tabla

Por supuesto, necesita un par de consultas de SQL Server en su bolsillo trasero que puede sacar para los novatos completos.

“¿Cómo haces lo que haces?” preguntan, con la voz temblorosa de admiración.

"Intente comenzar con esto", dice alegremente, y les muestra casi la consulta de SQL Server más utilizada:

SELECT Lastname FROM Customers;

De hecho, lo prueban en su propio editor de consultas y extraen los apellidos de todos los clientes de la empresa.

Para algunos novatos, eso puede ser suficiente. Otros, los mequetrefes, pueden sonreír y decir:"¿Eso es todo lo que tienes?" Necesitan saber con quién están tratando, por lo que agrega un comodín:

SELECT * FROM Orders;

Luego regresa a su escritorio, después de bombardearlos con todos los atributos de la tabla y dejar que averigüen qué hacer con tantos datos.

Salida de datos ordenados en orden

Los datos rara vez ingresan a una base de datos en un orden útil, pero la mayoría de los usuarios necesitan verlos enumerados en orden alfabético o numérico. Con esta consulta de SQL Server:

SELECT Emp_ID, Lastname FROM Employee WHERE City = 'Tulsa' ;

Obtendrá una lista de números de identificación y apellidos de empleados en Tulsa en el orden en que aparecen en la tabla. Para obtener una lista ordenada numéricamente por número de identificación, ejecute esta consulta de SQL Server:

SELECCIONE Emp_ID, Apellido DE Empleado

DONDE Ciudad ='Tulsa' ORDEN POR Emp_ID;

Si, por alguna razón, desea enumerarlos en orden numérico inverso, agregue desc :

SELECT Emp_ID, Lastname FROM Employee WHERE City = 'Tulsa' ORDER BY Emp_ID desc;

Salida de datos ordenados en grupos

Además de ordenar, agrupar es una forma poderosa de manipular datos. Para enumerar los nombres y las edades de los pacientes, agrupados por años de edad y ordenados por nombre dentro de esos grupos, estructure su consulta de SQL Server de esta manera:

SELECT Name, Age FROM Patients WHERE Age > 40 GROUP BY Age ORDER BY Name;

Ordenar y agrupar facilita mucho la vida de sus analistas de datos. Y las consultas de SQL Server detrás de esas operaciones son relativamente simples.

No renuncies a tu palanca de cambios

Esos son ejemplos simples de consultas de SQL Server para mantener en su propio glosario. Muchos DBA pueden escribir sus propias consultas favoritas mientras duermen, las usan con mucha frecuencia.

Por supuesto, los cambios de palanca son casi una especie en peligro de extinción. Cada vez es más difícil encontrarlos (y más difícil encontrar empleados de delicatessen que sepan cómo conducirlos). En un mundo en el que las transmisiones manuales están desapareciendo, es importante que se aferre a la que tiene en su conocimiento de las consultas SQL. Ambos requieren habilidad y no poca astucia, y lo distinguen de las personas a las que no les molesta todo eso de Embrague fuera - Cambio - Embrague adentro - Gasolina.

No entregue su turno de trabajo y consultas de SQL Server hasta que tenga que hacerlo.