SQL-запрос Добавление сложных условий из таблицы - PullRequest
0 голосов
/ 12 октября 2018

У меня есть длинный список (или таблица из 3–4 столбцов данных), который одновременно должен быть удовлетворен в запросе, как показано ниже:

A    B   C
x1   y1  z1
x2   y2   z2
x3   y3   z3
.
.
.
xn    yn   zn

Есть ли способ, которым я могу создатьвыражение / функция и т. д. или отдельный список и т. д., которые я могу иметь, которые можно вызывать в SQL-запросе (вместо явного написания):

Итак, предположим, у меня есть этот список в виде матрицы / списка в таблице X(локальный), и я могу использовать

, и я могу использовать пример SQL-запроса что-то вроде

SELECT *
FROM TABLE B
WHERE CONDITION  IN  ROWS OF TABLE X 

Просто добавлю, что я использую драйвер Python для получения данных через базу данных итаблица X (у меня она есть локально на моем диске), которую я создал, я создал локально.

1 Ответ

0 голосов
/ 12 октября 2018

Я предполагаю, что вы запрашиваете код Python.

Используя простую в памяти SQLite db, вы можете добиться этого.Посмотрите, как использовать Sqlite DB с Python здесь. Как работать с sqlite3 и Python .

С учетом вашего примера, где у нас есть список данных.

import sqlite3
connection = sqlite3.connect("company.db")

cursor = connection.cursor()

staff_data = [ ("William", "Shakespeare", "m", "1961-10-25"),
               ("Frank", "Schiller", "m", "1955-08-17"),
               ("Jane", "Wall", "f", "1989-03-14") ]

for p in staff_data:
    format_str = """INSERT INTO employee (staff_number, fname, lname, gender, birth_date)
    VALUES (NULL, "{first}", "{last}", "{gender}", "{birthdate}");"""

    sql_command = format_str.format(first=p[0], last=p[1], gender=p[2], birthdate = p[3])
    cursor.execute(sql_command)

Подробнее здесь .

.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...