manual de sql

Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

todo: sql comestible manual

------> De Albert

Nota: diferentes bases de datos, palabras clave y oraciones serán diferentes, si no se puede ejecutar, puede separar las palabras clave xxx de la base de datos de Baidu'xxx '

importar tiempo
importar sqlite3

db_path = r'C: \ Users \ 86131 \ Desktop \ ndhd_cw_001.db '
conn = sqlite3.connect (db_path)
c = conn.cursor ()

1.seleccionar: consulta

(1) Consultar una columna

c.execute ('seleccionar campo de la tabla')

(2) Consultar todo

c.execute ('seleccionar * de 表')

2.distinto: deduplicación

(1) Desduplicación de una columna

c.execute ('seleccionar tabla de formulario de campo distinto')

(2) Varias columnas para eliminar duplicados (fusionar varias columnas que sean exactamente iguales)

c.execute ('seleccione el campo dintinct 01 campo 02 ... de la tabla')

(3) Toda la deduplicación (fusionar toda la línea exactamente igual)

c.execute ('seleccionar distinto * de 表')

3.donde: condición

seleccione el campo de la tabla donde el valor del operador de campo

'' '
Operador:
igual a: =
no igual a: <> (en algunas versiones de SQL, escrito como:! =)
Mayor que:>
menor que: <
mayor que mayor que:> =
menor o igual a: <=
en un cierto rango: entre
Busque un patrón determinado: como
'' '

4. Operadores Y y O: se utilizan para filtrar registros basados ​​en más de una condición

c.execute ('seleccionar campo de la tabla donde (condición 01 Y condición 02) O condición 03')

5.order: sort (predeterminado ascendente, asc ascendente, desc ascendente)

c.execute ('seleccionar campo 01, campo 02, campo 03 del orden de la tabla por campo 01, campo 02 asc, campo 03 desc')

6.insertar: insertar

(1) Insertar directamente

c.execute ('insertar valores en la tabla (valor 01, valor 02,)')

(2) Insertar por columna

c.execute ('insertar en la tabla (columna 01, columna 02, columna 03) valores (valor 01, valor 02, valor 03)')

7.update: actualización

c.execute ('campo de conjunto de tabla de actualización = valor donde condición')

8.delete: eliminar

(1): eliminar datos de la tabla

c.execute ('eliminar de 表')

(2): Eliminar datos de fila

c.execute ('eliminar de la tabla donde condición')

9.limit: limitar el número de filas de consulta

c.execute ('seleccionar campo del número límite de la tabla')

10.como + comodín

c.execute ('seleccionar * de la tabla donde el campo es como fórmula comodín')
'' '
Comodín
Reemplazar uno o más caracteres:%
Reemplazar un carácter: -Cualquier carácter en la
lista (sin coma): [charlist]
No es una lista Cualquier carácter en (sin coma): [^ charlist] o [! Charlist]
'' '

11.entre / en: rango

c.execute ('seleccionar * de la tabla donde el campo entre el valor 01 y el valor 02')
c.execute ('seleccionar * de la tabla donde el campo está en (valor 01, valor 02, valor 03,…)')

12.Alias:

(1): el nombre de la tabla especifica el alias

c.execute ('seleccione a.id, a.name, b.money de sql_notebook como a, sql_notebook001 as b donde a.id = b.id')

(1): el nombre del campo especifica el alias

c.execute ('SELECT LastName AS Family, FirstName AS Name FROM Persons')

13.unión:

c.execute ('seleccione a.id, a.name, b.money from sql_notebook as a, sql_notebook001 as b from a inner join b on a.id = b.id')

Equivalente a

c.execute ('seleccione a.id, a.name, b.money de sql_notebook como una combinación interna sql_notebook00

'' '
JOIN: Si hay al menos una coincidencia en la tabla, devuelve filas.
LEFT JOIN: incluso si no hay ninguna coincidencia en la tabla de la derecha, devuelve todas las filas de la tabla de la izquierda
RIGHT JOIN: incluso si no hay ninguna coincidencia en la tabla de la izquierda, devuelve todas las filas de la tabla de la derecha línea
FULL JOIN: Siempre que haya una coincidencia en una de las tablas, la línea devuelve
'' '

14.unión: fusionar dos o más

El conjunto de resultados de la instrucción SELECT (la instrucción SELECT debe tener el mismo número de columnas. Las columnas también deben tener tipos de datos similares. Al mismo tiempo, el orden de las columnas en cada instrucción SELECT debe ser el mismo).

Si se permiten valores duplicados, use UNION ALL

c.execute ('seleccione a.id de sql_notebook como UNION seleccione b.id de sql_notebook001 como b')

15.seleccione en: crear una copia de seguridad de la tabla

c.execute ('SELECCIONAR Personas.Último Nombre, Órdenes.OrdenNo
EN
Personas_Orden_Backup FROM Personas
INNER JOIN Órdenes
ON Persons.Id_P = Orders.Id_P')

ps: sqlite no aplica esta sintaxis, equivalente:

c.execute ('CREAR TABLA tabla nueva COMO SELECCIONAR * DE tabla anterior')

16.crear base de datos: crear una base de datos

c.execute ('craeat database db_name')

17.creat table: crea una mesa

c.execute ('CREATE TABLE nombre de la tabla (
tipo de datos del campo 01, tipo de datos del
campo 02, tipo de datos del
campo 03,

)')

todo tipo de datos: (enumerar temporalmente sqlite)

'' '
sqlite:
1. NULL, el valor es NULL
2. INTEGER, el valor es un entero con signo, según el tamaño del valor almacenado en 1, 2, 3, 4, 6 u 8 bytes
3. REAL, el valor es de coma flotante El valor se almacena como un número de punto flotante IEEE de 8 bytes
. 4. TEXT, el valor es una cadena de texto, y la codificación de la base de datos (UTF-8, UTF-16BE o UTF-16LE) se usa para almacenar
5. BLOB, que es solo un bloque de datos y se almacena exactamente como entrada (Es decir, sin reemplazo)

La mayoría de los motores de base de datos (todos los motores de base de datos SQL excepto sqlite hasta donde lo conocemos) utilizan tipos estáticos y rígidos. Con los tipos estáticos, el tipo de datos está determinado por su contenedor. Este contenedor se refiere a La columna específica que se almacenará.
Sqlite utiliza un sistema de tipos dinámicos más general. En SQLite, el tipo de datos de un valor está relacionado con el valor en sí, no con su contenedor.
El sistema de tipos dinámicos de Sqlite es compatible con los sistemas de tipos estáticos más generales de otras bases de datos, pero al mismo tiempo, el tipo dinámico en sqlite le permite hacer cosas que no son posibles con las bases de datos tradicionales de tipos rígidos.
'' '

18.constraints: restricciones

(1) no nulo: no agrega un valor al campo, no puede insertar nuevos registros o actualizar registros

c.execute ('' 'CREATE TABLE Kzz
(Código TEXT NOT NULL,
Total_Investment_Amounts REAL NOT NULL);' '')

(2) único: la restricción identifica de forma única cada registro en la tabla de la base de datos

Cada tabla puede tener múltiples restricciones UNIQUE, pero cada tabla solo puede tener una restricción PRIMARY KEY

(2.1) Cree restricciones únicas al crear tablas

c.execute ('' 'CREAR TABLA Personas (
Id_P int NOT NULL,
LastName varchar (255) NOT NULL,
FirstName varchar (255),
Address varchar (255),
City varchar (255),
UNIQUE (Id_P)
)' '' )

(2.2) La tabla ya existe para crear una restricción única

c.execute ('ALTER TABLE tabla AÑADIR ÚNICO (campo)'

(2.3) Nombre la restricción ÚNICA, cree una restricción de varias columnas

c.execute (`` 'ALTER TABLE table
ADD CONSTRAINT nombre de restricción UNIQUE (campo 01, campo 02)' '')

(2.3) Cancelar la restricción ÚNICA

c.execute ('' 'ALTER TABLE Personas
DROP CONSTRAINT uc_PersonID' '')

(3): CLAVE PRIMARIA: Restricción de clave primaria

(3.1) Crear

c.execute ('' 'CREAR TABLA Personas
(
Id_P int NOT NULL PRIMARY KEY,
LastName varchar (255) NOT NULL,
FirstName varchar (255),
Address varchar (255),
City varchar (255)
)
' '')

(3.2) Nombrar restricciones PRIMARY KEY, definir restricciones PRIMARY KEY para múltiples columnas

c.execute ('' 'CREATE TABLE Personas
(
Id_P int NOT NULL,
LastName varchar (255) NOT NULL,
FirstName varchar (255),
Address varchar (255),
City varchar (255),
CONSTRAINT pk_PersonID PRIMARY KEY (Id_P, LastName )
)
'' ')

(3.3) La tabla ya existe para crear una restricción única

c.execute ('' 'ALTER TABLE Personas
ADD PRIMARY KEY (Id_P)' '')

(3.4) Revocación de restricciones

c.execute ('' 'ALTER TABLE Personas
DROP CONSTRAINT pk_PersonID' '')

(4): LLAVE EXTRANJERA: restricción de clave externa

Eliminar: la tabla maestra se puede eliminar solo cuando el registro en la tabla esclava no existe. Eliminar de la tabla, la tabla principal sin cambios

Actualización: la tabla maestra se puede actualizar solo cuando el registro en la tabla esclava no existe. Actualice la tabla esclava, la tabla maestra permanece sin cambios

(4.1) Crear

c.execute ('' 'CREATE TABLE Órdenes
(
Id_O int NOT NULL PRIMARY KEY,
OrderNo int NOT NULL,
Id_P int FOREIGN KEY REFERENCES Persons (Id_P)
)' '')

(4.2) restricciones FOREIGN KEY y definir restricciones FOREIGN KEY para múltiples columnas

c.execute ('' 'CREATE TABLE Órdenes
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (Id_O),
CONSTRAINT fk_PerOrders FOREIGN KEY (Id_P)
REFERENCIAS' '')

(4.3) Cree una restricción FOREIGN KEY para la columna "Id_P" si la tabla ya existe

c.execute ('' 'Órdenes ALTER TABLE
AÑADIR LLAVE EXTRANJERA (Id_P)
REFERENCIAS Personas (Id_P)' '')

(4.4) Cancelar la restricción FOREIGN KEY

c.execute ('' 'ALTER TABLE Orders
DROP CONSTRAINT fk_PerOrders' '')

y también:

'' '
Verificación de
SQL SQL predeterminado
SQL Crear índice
SQL Descartar
SQL Alterar
SQL Incrementar
SQL Vista
SQL Fecha
SQL Nulos
SQL SQL isnull ()

SQL 函数
Funciones
SQL SQL avg ()
SQL count ()
SQL first ()
SQL last ()
SQL max ()
SQL min ()
SQL sum ()
SQL Group By
SQL Con
SQL ucase ()
SQL lcase ()
SQL mid ()
SQL len ()
SQL round ()
SQL ahora ()
formato SQL ()
'' '

start_time = time.time ()
look = c.execute (sql)
end_time = time.time ()
continuo_time = end_time - start_time
print ('运行 该 sql 语句 的 时间 为 {}'. format (str (continuo_time)) + ' s ')
para i en look:
print (i)

Supongo que te gusta

Origin blog.csdn.net/ppkqq/article/details/109923488
Recomendado
Clasificación