Я был озадачен тем, почему этот запрос может работать так медленно. Это таблица, соединяющая две иностранные ключи и то, где оператор на каждом идентификаторе иностранного ключа < /p>
Вот полный запрос: < /p>
SELECT
`a`.`id` AS `_audit_id`
FROM
`audits` AS `a`
INNER JOIN `audit_templates` AS `aat` ON `aat`.`id` = `a`.`audit_template_id`
INNER JOIN `companies` AS `c` ON `c`.`id` = `a`.`company_id`
WHERE
`a`.`organization_id` = 484
AND `a`.`date` >= '2025-01-01'
AND `a`.`date`
И вот объяснения результатов из полного запроса: < /p>
[
{
"id": 1,
"select_type": "SIMPLE",
"table": "c",
"partitions": null,
"type": "range",
"possible_keys": "PRIMARY",
"key": "PRIMARY",
"key_len": "4",
"ref": null,
"rows": 298,
"filtered": 100.00,
"Extra": "Using where; Using index"
},
{
"id": 1,
"select_type": "SIMPLE",
"table": "a",
"partitions": null,
"type": "ref",
"possible_keys": "fk-audit_template-audits,fk-company-audits,fk-organization-audits,date,idx-audit-date,idx-audit-date-time,fk-audit-organization-department,audits_company_id_organization_id_department_id_index",
"key": "audits_company_id_organization_id_department_id_index",
"key_len": "10",
"ref": "freshability.c.id,const",
"rows": 403,
"filtered": 3.21,
"Extra": "Using where"
},
{
"id": 1,
"select_type": "SIMPLE",
"table": "aat",
"partitions": null,
"type": "eq_ref",
"possible_keys": "PRIMARY",
"key": "PRIMARY",
"key_len": "4",
"ref": "freshability.a.audit_template_id",
"rows": 1,
"filtered": 100.00,
"Extra": "Using index"
}
]
< /code>
Любая идея вообще с чего начать, искать, чтобы ускорить это? Я в тупике. company_id in () и она работала невероятно быстро (3 секунды) < /p>
Наоборот, я попытался удалить заявление для aaudit_template_id in (), и она работала так же, как и полный запрос.
Подробнее здесь: [url]https://stackoverflow.com/questions/79403450/mysql-slow-query-performance-with-foreign-keys[/url]
Я был озадачен тем, почему этот запрос может работать так медленно. Это таблица, соединяющая две иностранные ключи и то, где оператор на каждом идентификаторе иностранного ключа < /p> Вот полный запрос: < /p> [code]SELECT `a`.`id` AS `_audit_id` FROM `audits` AS `a` INNER JOIN `audit_templates` AS `aat` ON `aat`.`id` = `a`.`audit_template_id` INNER JOIN `companies` AS `c` ON `c`.`id` = `a`.`company_id` WHERE `a`.`organization_id` = 484 AND `a`.`date` >= '2025-01-01' AND `a`.`date` И вот объяснения результатов из полного запроса: < /p> [ { "id": 1, "select_type": "SIMPLE", "table": "c", "partitions": null, "type": "range", "possible_keys": "PRIMARY", "key": "PRIMARY", "key_len": "4", "ref": null, "rows": 298, "filtered": 100.00, "Extra": "Using where; Using index" }, { "id": 1, "select_type": "SIMPLE", "table": "a", "partitions": null, "type": "ref", "possible_keys": "fk-audit_template-audits,fk-company-audits,fk-organization-audits,date,idx-audit-date,idx-audit-date-time,fk-audit-organization-department,audits_company_id_organization_id_department_id_index", "key": "audits_company_id_organization_id_department_id_index", "key_len": "10", "ref": "freshability.c.id,const", "rows": 403, "filtered": 3.21, "Extra": "Using where" }, { "id": 1, "select_type": "SIMPLE", "table": "aat", "partitions": null, "type": "eq_ref", "possible_keys": "PRIMARY", "key": "PRIMARY", "key_len": "4", "ref": "freshability.a.audit_template_id", "rows": 1, "filtered": 100.00, "Extra": "Using index" } ] < /code> Любая идея вообще с чего начать, искать, чтобы ускорить это? Я в тупике. company_id in () и она работала невероятно быстро (3 секунды) < /p> Наоборот, я попытался удалить заявление для aaudit_template_id in (), и она работала так же, как и полный запрос.
Я пытаюсь загрузить файл CSV в таблицу SQL. Файл CSV имеет тот же формат, что и таблица SQL. Все столбцы соответствуют именам, и все типы данных проверены.
df = pd.read_csv(path, sep= ; )
df.to_sql(table_name, schema=schema, con=conn, if_exists=...
Я пробовал использовать in_array и циклы for, но так и не смог добиться того, что пытался...
У меня есть массив (с именем $contacts), который выглядит следующим образом:
Array
(
=> 1
=> 1
=> 1
)