草庐IT

query-optimization

全部标签

mysql - 如何使用许多 JOIN 提高查询性能

我有一个查询(目的是制作View),它使用一些连接来获取每一列。对于添加的每组联接,性能会迅速(呈指数级下降?)。加快查询速度的好方法是什么?请查看查询中的评论。如果有帮助,这就是使用WordPress数据库架构。这是EXPLAIN的截图产品表+--+----+|id|name|+--+----+|1|test|+--+----+元数据表+----------+--------+-----+|product_id|meta_key|value|+----------+--------+-----+|1|price|9.99|+----------+--------+-----+|1|s

mysql - 如何使用许多 JOIN 提高查询性能

我有一个查询(目的是制作View),它使用一些连接来获取每一列。对于添加的每组联接,性能会迅速(呈指数级下降?)。加快查询速度的好方法是什么?请查看查询中的评论。如果有帮助,这就是使用WordPress数据库架构。这是EXPLAIN的截图产品表+--+----+|id|name|+--+----+|1|test|+--+----+元数据表+----------+--------+-----+|product_id|meta_key|value|+----------+--------+-----+|1|price|9.99|+----------+--------+-----+|1|s

MySQL 说明更新

作为大学复习的一部分,我正在尝试回答以下问题:Createanindexonatleastoneattributeofatableinthe‘employees’database,whereyouusetheMySQL‘EXPLAIN’tooltoclearlyshowthebenefit(intermsorretreival)andthenegative(intermsofupdate)ofthecreationoftheindexinquestion.对于第一部分,我在employees表上创建了一个索引,并在索引前后使用了以下查询,以证明从检索的角度来看它是有益的:EXPLAIN

MySQL 说明更新

作为大学复习的一部分,我正在尝试回答以下问题:Createanindexonatleastoneattributeofatableinthe‘employees’database,whereyouusetheMySQL‘EXPLAIN’tooltoclearlyshowthebenefit(intermsorretreival)andthenegative(intermsofupdate)ofthecreationoftheindexinquestion.对于第一部分,我在employees表上创建了一个索引,并在索引前后使用了以下查询,以证明从检索的角度来看它是有益的:EXPLAIN

mysql - 需要帮助优化 MySQL 查询

我有6张table:CREATETABLEIFNOTEXISTS`sbpr_groups`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(255)DEFAULTNULL,`active`tinyint(1)DEFAULT'0',`dnd`tinyint(1)DEFAULT'0',PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8AUTO_INCREMENT=32;CREATETABLEIFNOTEXISTS`sbpr_newsletter`(`id`int(11)NOTNULLAUTO_IN

mysql - 需要帮助优化 MySQL 查询

我有6张table:CREATETABLEIFNOTEXISTS`sbpr_groups`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(255)DEFAULTNULL,`active`tinyint(1)DEFAULT'0',`dnd`tinyint(1)DEFAULT'0',PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8AUTO_INCREMENT=32;CREATETABLEIFNOTEXISTS`sbpr_newsletter`(`id`int(11)NOTNULLAUTO_IN

php - 这是什么错误? "Database query failed: Data truncated for column ' column_name' 在第 1 行

我正在构建一个PHP/MySQL应用程序,但我的创建和更新查询遇到了问题。我有5列设置为FLOAT类型,也设置为NULL列。我不打算在工作流程的很久以后才填写它们。但是,我需要为此数据库创建新记录,并且我需要编辑现有记录,而根本不触及这5个float字段。我正在使用OOPPHP,它使用标准的save()方法来检查对象中是否存在ID。如果不是,它调用create(),如果是,它调用update()。它通常工作得很好。update()和create()方法旨在从声明在顶部的protectedstatic$db_fields属性数组中提取每个类,包含该表中使用的所有字段。update()和c

php - 这是什么错误? "Database query failed: Data truncated for column ' column_name' 在第 1 行

我正在构建一个PHP/MySQL应用程序,但我的创建和更新查询遇到了问题。我有5列设置为FLOAT类型,也设置为NULL列。我不打算在工作流程的很久以后才填写它们。但是,我需要为此数据库创建新记录,并且我需要编辑现有记录,而根本不触及这5个float字段。我正在使用OOPPHP,它使用标准的save()方法来检查对象中是否存在ID。如果不是,它调用create(),如果是,它调用update()。它通常工作得很好。update()和create()方法旨在从声明在顶部的protectedstatic$db_fields属性数组中提取每个类,包含该表中使用的所有字段。update()和c

optimization - 在 MySQL 中高效查询 15,000,000 行表

考虑以下数据库表:包含13,000,000行的“消息”表(每条消息一行)。包含3,000,000行(每个用户一行)的“用户”表。以下查询用于获取一堆消息和对应的用户:SELECTmessages.id,messages.message,users.id,users.usernameFROMmessagesINNERJOINusersONmessages.user_id=users.idWHEREmessages.idin(?,?,?,?...atotalof100"?":s);在每个查询中获取100条消息。“消息”在id(主键,BIGINT不是自动生成)和user_id上编入索引。"u

optimization - 在 MySQL 中高效查询 15,000,000 行表

考虑以下数据库表:包含13,000,000行的“消息”表(每条消息一行)。包含3,000,000行(每个用户一行)的“用户”表。以下查询用于获取一堆消息和对应的用户:SELECTmessages.id,messages.message,users.id,users.usernameFROMmessagesINNERJOINusersONmessages.user_id=users.idWHEREmessages.idin(?,?,?,?...atotalof100"?":s);在每个查询中获取100条消息。“消息”在id(主键,BIGINT不是自动生成)和user_id上编入索引。"u