Está en la página 1de 5

7/3/22, 19:35 Hoja de trucos de SQL | Flujo de órbita baja

Código
Hoja de trucos de

Hoja de trucos de SQL


SQL
Valor absoluto de
Python
Hoja de trucos de
Esta es nuestra hoja de trucos de SQL. Es demasiado largo/detallado para ser una hoja de trucos, pero
Python
demasiado corto para ser un tutorial. Nos enfocamos en MySQL pero mencionamos otros DB. Incluimos más de
Lista inversa de lo que he visto en otras hojas de trucos de SQL.
Python
Propósito - Esto está destinado a ser utilizado como referencia. No pretende ser una guía completa. Debería
Tutorial de Python ayudar si solo desea recordar la sintaxis de una declaración o si sabe lo suficiente como para descubrir cómo
funciona en función de un ejemplo.
Tutorial de Python -
Parte 1

Tutorial de Python - Parte cero

Parte 2

+ - * / % & | ^ = > < >= <= <>

Tutorial de Python - += -= *= /= %= &= ^-= |*=


Operadores

ALL AND ANY BETWEEN EXISTS IN LIKE NOT OR SOME

Parte 8
INT(size), BLOB, VARCHAR(size)
Tipos comunes de MySQL

Empuñadura de
barco - FIM /*Comment */

Comentarios
SELECT col1, /*col2,*/ col3 FROM Tab1; -- comment
Agarre de barco
Valle de la roca

Cómo comprimir y
descomprimir Consultas / Seleccionar

archivos y carpetas
SELECT * FROM table1; mesa entera
en Java SELECT col1, col2, FROM table1; Solo dos columnas
SELECT * FROM table1 WHERE loc='Mexico'; Todo lo que coincida con el término de búsqueda
AI
SELECT DISTINCT col1, col2 FROM table1; Solo registros distintos
Aprendizaje SELECT COUNT(DISTINCT Country) FROM table1; Recuento de registros distintos para una columna
automático SELECT * FROM Customers ORDER BY Country ASC; orden ascendente
SELECT * FROM Customers ORDER BY Country DESC; Orden descendente
Algoritmo de SELECT * FROM Customers ORDER BY Country ASC, CustomerName DESC; Ambas cosas
vecinos más
cercanos K

Devolver múltiples
valores Python Insertar / Actualizar / Eliminar

Instalación de Lua INSERT INTO Customers (a, b) VALUES ('abc', 'xyz'); Insertar
UPDATE Customers SET ContactName = 'Alfred', City= 'Frankfurt' WHERE CustomerID = 1; Actualizar
Python - Cómo
UPDATE Customers SET ContactName='Juan'; Actualización - ¡NO! (juegos
manejar la división DELETE FROM Customers WHERE CustomerName='Alfreds'; Borrar
por cero DELETE FROM table_name; Eliminar - ¡NO! (borra todo)
DELETE * FROM table_name; Eliminar - ¡NO! (borra todo)
Python - Cómo
multiplicar flotantes

Java Cómo solicitar


la entrada del
usuario - Funciones y Límites

java.util.Scanner
SELECT MIN(col1) from table1; valor más pequeño en col
Java Cómo eliminar SELECT MAX(col1) from table1; mayor valor en col
SELECT COUNT(col1) from table1; número en columna
un directorio con
SELECT AVG(col1) from table1; valor promedio
archivos (recursivo)
SELECT SUM(col1) from table1; suma de valores
Java Cómo cifrar SELECT TOP 5 * FROM Customers; primeros 5 registros ( MSSQL )
SELECT * FROM Customers LIMIT 5; primeros 5 registros ( MySQL )
una cadena
SELECT * FROM Customers WHERE ROWNUM <= 5; primeros 5 registros (Oracle)
Java Cómo
encontrar el modo

de una matriz
Java Cómo importar La coincidencia de patrones

matemáticas

SELECT * FROM table1 WHERE col1 LIKE ‘a_b%c’


Coincidir con un patrón

https://low-orbit.net/sql-cheat-sheet 1/5
7/3/22, 19:35 Hoja de trucos de SQL | Flujo de órbita baja
Java Cómo obtener WHERE City LIKE '[!bsp]%'; -- access/mssql only
el valor ASCII del % cero, uno o varios
_ solo char, mysql, mssql/uso de acceso? en lugar
carácter
.. WHERE Country IN ('Germany', 'France', 'UK'); Membresía del conjunto de consultas
Java Cómo generar .. WHERE Country NOT IN ('Germany', 'France', 'UK'); Membresía del conjunto de consultas
un número aleatorio .. WHERE Country IN (SELECT Country FROM Suppliers); Membresía del conjunto de consultas
.. WHERE Price BETWEEN 10 AND 20; -- inclusinve Consulta por Rangos
Java Cómo obtener .. WHERE Price NOT BETWEEN 10 AND 20; Consulta por Rangos
la fecha y hora .. WHERE Price NOT BETWEEN ‘abc’ AND ‘xyz’; Consulta por Rangos
actuales .. WHERE OrderDate BETWEEN #07/04/1996# AND #07/09/1996#; Consulta por Rangos
.. WHERE (Price BETWEEN 10 AND 20) AND NOT CategoryID IN (1,2,3); Y
Java Cómo agregar SELECT CustomerID as ID, CustomerName AS Customer FROM Customers; Consulta de tabla múltiple
/ agregar a una SELECT o.OrderID, c.CustomerName FROM Customers AS c, Orders AS o; Consulta de tabla múltiple
matriz ...WHERE col1 IS NULL; Comprobar NULL
...WHERE col1 IS NOT NULL; Comprobar NO NULO
Java Cómo
comparar cadenas

Java para cada


bucle Uniones y uniones

Java Cómo escapar Tipos de unión:


de las comillas (INNER) JOIN emparejado de ambas tablas
dobles en una LEFT (OUTER) JOIN todo desde la izquierda, emparejado desde la derecha
cadena RIGHT (OUTER) JOIN emparejado desde la izquierda, todo desde la derecha
FULL (OUTER) JOIN emparejado en cualquiera de las tablas
Java Cómo

encontrar la
longitud de la SELECT column_name(s) FROM table1

Unir internamente
INNER JOIN table2 ON table1.column_name = table2.column_name;
cadena
Java Cómo llenar SELECT Orders.OrderID, Customers.CustomerName,

una matriz Shippers.ShipperName FROM ((Orders INNER JOIN Customers ON

Unir internamente
Orders.CustomerID = Customers.CustomerID) INNER JOIN Shippers ON

Java Cómo solicitar Orders.ShipperID = Shippers.ShipperID);


/ forzar la
recolección de SELECT column_name(s) FROM table1 LEFT JOIN table2

IZQUIERDA Unirse
basura ON table1.column_name = table2.column_name;

Subcadena de Java SELECT column_name(s) FROM table1 RIGHT JOIN table2

DERECHO Unirse
ON table1.column_name = table2.column_name;
Java Cómo instalar
Apache Commons
IO SELECT column_name(s) FROM table1 FULL OUTER JOIN

EXTERIOR COMPLETO
table2 ON table1.column_name = table2.column_name;
Java Cómo salir de
la declaración If SELECT A.CustomerName, B.CustomerName, A.City FROM

Self Join (todos los clientes de


Customers A, Customers B WHERE A.ID <> B.ID AND A.City = B.City;
Java Cómo hacer
exponentes
SELECT col1 FROM table1 UNION SELECT col1 FROM table2; UNION (mismas columnas, tipos, or
Java Cómo eliminar
un archivo SELECT col1 FROM table1 UNION ALL SELECT col1 FROM table2; UNION incluye duplicados (mismas

Varios

SELECT COUNT(CustomerID), Country FROM Customers GROUP BY Country; A


SELECT COUNT(CustomerID), Country FROM Customers GROUP BY Country HAVING COUNT(CustomerID) > 5; A
SELECT SupplierName FROM Sup WHERE EXISTS (SELECT * FROM Products WHERE id = Sup.id); S
SELECT ProductName FROM Products WHERE ProductID = ANY (SELECT ProductID FROM OrderDetails WHERE Quantity = 10); S
SELECT * INTO CustomersBackup20191201 FROM Customers; C
SELECT * INTO CustomersBackup20191201 IN 'Backup.mdb' FROM Customers; C
INSERT INTO table2 SELECT * FROM table1 WHERE condition; C
INSERT INTO table2 (col1, col2) SELECT col1, col2 FROM table1 WHERE col3 = 5; C
SELECT ProductName, UnitPrice * (UnitsInStock + IFNULL(UnitsOnOrder, 0)) FROM Products N
SELECT ProductName, UnitPrice * (UnitsInStock + COALESCE(UnitsOnOrder, 0)) FROM Products N

Create / Delete Database

CREATE DATABASE testDB; Create DB


DROP DATABASE testDB; Delete DB

Create Table

CREATE TABLE Persons (


Create Table

PersonID int,

https://low-orbit.net/sql-cheat-sheet 2/5
7/3/22, 19:35 Hoja de trucos de SQL | Flujo de órbita baja
LastName varchar(255)

);

Create Table

CREATE TABLE new_table AS SELECT

from Existing Table

col1, col2 FROM old_table;

(cols and values)

CREATE TABLE Persons (

ID int NOT NULL,

Create Table

LastName varchar(255) NOT NULL

with non-null unique ID

UNIQUE (ID)

); --mysql only

CREATE TABLE Persons (

ID int NOT NULL,


Create Table - non-null ID and

LastName varchar(255) NOT NULL,


Last Name. This uses a multi-column

CONSTRAINT UC_Person UNIQUE (ID,LastName)


constraint. ( all DBs )

);

CREATE TABLE Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,


Create Table - non-null Primary Key

PRIMARY KEY (ID)

); -- mysql only,

CREATE TABLE Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,


Create Table - non-null, Named, Multi Col, Primary Ke
CONSTRAINT PK_Person PRIMARY KEY (ID,LastName)

); -- multi col, named, mysql only

CREATE TABLE Orders (

OrderID int NOT NULL,

PersonID int,

Create Table - Primary Key and Foreign Key (MySQL onl


PRIMARY KEY (OrderID),

FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)

);--mysql only

CREATE TABLE Orders (

OrderID int NOT NULL,

OrderNumber int NOT NULL,

PersonID int,

Create Table - Primary Key and Foreign Key (all DBs)

PRIMARY KEY (OrderID),

CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID)

REFERENCES Persons(PersonID)

); -- named, all dbs

CREATE TABLE Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),
Create Table - With a Constraint (MySQL only)

Age int,

CHECK (Age>=18)

); -- mysql only

CREATE TABLE Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Create Table - With Named Constraint (all DBs)

Age int,

City varchar(255),

CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')

); -- named all dbs

CREATE TABLE Persons (

ID int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),
Create Table - With a Default Value

Age int,

City varchar(255) DEFAULT 'Sandnes'

);

CREATE TABLE Orders (

ID int NOT NULL,

OrderNumber int NOT NULL,


Create Table - Date for Default Value

OrderDate date DEFAULT GETDATE()

);

CREATE TABLE Persons (

ID int NOT NULL AUTO_INCREMENT,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Create Table - Auto Increment Primary Key

Age int,

PRIMARY KEY (ID)

); -- mysql only

ALTER TABLE Persons AUTO_INCREMENT=100; -- mysql only

https://low-orbit.net/sql-cheat-sheet 3/5
7/3/22, 19:35 Hoja de trucos de SQL | Flujo de órbita baja

Table Removal

DROP TABLE Shippers;


Drop Table

TRUNCATE TABLE table_name;


Truncate Table

Alter Table

ALTER TABLE table1 ADD col1 date;


ALTER TABLE table1 ADD email varchar(255);


ALTER Table
ALTER TABLE table_name DROP COLUMN col1;

ALTER TABLE table_name MODIFY COLUMN col1 year; --mysql only, others differ

ALTER TABLE Persons ADD UNIQUE (ID);

ALTER TABLE Persons ADD CONSTRAINT UC_Person UNIQUE (ID,LastName);

ALTER Table
ALTER TABLE Persons DROP INDEX UC_Person; --multi col constraint, mysql only

ALTER TABLE Persons DROP CONSTRAINT UC_Person; -- MSSQL, Oracle, Access

ALTER TABLE Persons ADD PRIMARY KEY (ID);

Tabla ALTER:
ALTER TABLE Persons ADD CONSTRAINT PK_Person PRIMARY KEY (ID,LastName); -- multi col, named

Suelta la cl
ALTER TABLE Persons DROP PRIMARY KEY; --mysql only

ALTER TABLE Orders ADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);

Tabla ALTER
ALTER TABLE Orders ADD CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);

ALTER TABLE Orders DROP FOREIGN KEY FK_PersonOrder;--mysql only

ALTER TABLE Persons ADD CHECK (Age>=18);

Tabla ALTER
ALTER TABLE Persons ADD CONSTRAINT CHK_PersonAge CHECK (Age>=18 AND City='Sandnes');

ALTER TABLE Persons DROP CHECK CHK_PersonAge; --mysql only

ALTER TABLE Persons

Tabla ALTER
ALTER City SET DEFAULT 'Sandnes'; -- mysql only

ALTER City DROP DEFAULT; -- mysql only

Eliminar índ
ALTER TABLE table_name DROP INDEX index_name; -- mysql only

Crear índice

CREATE INDEX index_name ON table_name (column1, column2, ...); -- dups


Crear índice

CREATE UNIQUE INDEX index_name ON table_name (column1, column2, ...); -- no dups


Crear índice único

Fechas: solo MySQL

FECHA AAAA-MM-DD
FECHA Y HORA AAAA-MM-DD HH:MI:SS
MARCA DE TIEMPO AAAA-MM-DD HH:MI:SS
AÑO AAAA o AAA

SELECT * FROM Orders WHERE OrderDate='2008-11-11'


Consultar por fecha

Puntos de vista

CREATE VIEW [Current Product List] AS

SELECT ProductID, ProductName

FROM Products Crear una vista

WHERE Discontinued = No;

SELECT * FROM [Current Product List];


Consultar una vista

CREATE OR REPLACE VIEW [Current Product List] AS

SELECT ProductID, ProductName, Category

Crear o reemplazar una vista

FROM Products
WHERE Discontinued = No;

DROP VIEW view_name;


Suelta una vista

https://low-orbit.net/sql-cheat-sheet 4/5
7/3/22, 19:35 Hoja de trucos de SQL | Flujo de órbita baja

https://low-orbit.net/sql-cheat-sheet 5/5

También podría gustarte