首页 > TAG信息列表 > temp-tables

使用临时表是否明智?

我们有一个用于产品的mySQL数据库表.我们正在利用缓存层来减少数据库负载,但是我们认为最好将需要存储在缓存层中的实际数据最小化,以进一步加快应用程序的速度. 访问者可见的数据库中的所有产品都有附加的价格: 价格存储在另一个表中,称为价格.有多种价格类别,具体取决于每个访客(

MySQL:创建临时表时是否自动创建主键?

我有一个查询,它花费了相当长的时间(大约一千一百万个观察值),并且有三个联接(我无法阻止它进行检查).联接之一是使用临时表. 当我使用其中具有主键的表中的数据创建临时表时,新表将继承索引,还是我必须在新的临时表中显式创建索引(使用父级的主键)表)?解决方法:否-对于显式定义的临

将Rails ActiveRecord对象保存到临时表(MySQL)

用户可以从文件将数据导入我们的网站. 数据通常包含数百个项目(Item< ActiveRecord :: Base). 尽管验证有帮助,但它们不能解决内容完整性检查的问题.为此,我们希望有一个测试模式. 我们可以在Rails / MySQL中使用临时的Items表吗?如果可以,我们应该怎么做?解决方法:您可以为此使用AR

在MySQL中,如何基于对同一表执行INNER JOIN的表的结果进行删除?

好的,所以我确实很喜欢MySQL,但这基本上是我想做的事情: delete from course_plan_relationships where course_plan_relationships.id not in ( select course_plan_relationships.id from daily_plans inner join course_plan_relationships on daily_plans.id=cou

MySQL:如何将子表的SUM()值更新为同一表中的父行?

我需要获取子行的总和,并更新父行上的数据. 我已经为此得到了如下所示,但是遇到了错误#1111(无效使用组函数). CREATE TEMPORARY TABLE cms_ladu_temp LIKE cms_ladu; INSERT INTO cms_ladu_temp SELECT * FROM cms_ladu WHERE parent_id IN (326,500); UPDATE cms_ladu I

如何在MySQL中将数据合并到临时表中

我有一个非常大的表,称为paypal_ipn_orders.在此表中,我有2个重要的信息位,即行item_name和行sort_num.我想使用某些参数从paypal_ipn_orders中提取记录,并将它们放入称为temp_table的临时表中.我知道如何选择记录如下 SELECT `item_name`, `sort_num` FROM `paypal_ipn_orders`

如果我不删除临时内存表,该表将保留多长时间(MySQL)

我在MySQL中使用递归存储过程来生成名为id_list的临时表,但是我必须在后续的select查询中使用该过程的结果,因此无法在该过程中删除该临时表… BEGIN; /* generates the temporary table of ID's */ CALL fetch_inheritance_groups('abc123',0); /* uses the results of the SPR

mysql-如何将查询的输出存储到临时表中并在新查询中使用该表?

我有一个MySQL查询,它使用2个内部联接的3个表.然后,我必须从此查询输出中找到一组的最大值.将两者结合起来超出了我的范围.我是否可以通过将第一个复杂查询的输出存储到某种临时表中,给它命名,然后在新查询中使用该表来解决该问题?这将使代码更易于管理.谢谢您的帮助.解决方法:这很

严重的MySQL性能问题(联接,临时表,文件…)

我有一张用户表和一张投票表.投票表存储对其他用户的投票.无论好坏,投票表中的一行,都会在两个用户之间的两个方向上存储投票. 现在,问题在于我想列出一些人投票的所有人. 我不是MySQL的专家,但是根据我的想法,由于join语句中的OR条件,它需要查看整个users表(目前44,000行),并创建

同时创建许多mysql临时表是不是很糟糕?

我需要进行大量的统计分析,以便向用户提供一些数据.目前,我从mysql捕获数据并通过PHP数组处理它们.但是,mysql临时表相当好(比PHP数组效率更高,速度更快;显然是由于它们的机制). 我的初步解决方案是在每个请求(即连接)上形成一个临时表来导入和处理数据.但是,我不确定同时创建许多

如果我不丢弃它,临时MEMORY表会持续多长时间(MySQL)

我在MySQL中使用递归存储过程来生成一个名为id_list的临时表,但是我必须在后续选择查询中使用该过程的结果,所以我不能在过程中删除临时表… BEGIN; /* generates the temporary table of ID's */ CALL fetch_inheritance_groups('abc123',0); /* uses the results of the store

PHP,MySQL和临时表

Php新手. 这个PHP&有什么问题吗? MySQL代码? include_once "db_login.php" ; $sql = "DROP TEMPORARY TABLE IF EXISTS temp_sap_id_select" ; mysql_query ( $sql ) or ( "Error " . mysql_error () ) ; $sql = " CREATE TEMPORARY TABLE temp

sql – 如何将2个临时表一起添加

如果我正在创建临时表,则有2列. id和得分.我想把它们加在一起. 我想添加它们的方式是,如果它们各自包含相同的id,那么我不想复制id,而是将分数加在一起. 如果我有2个名为t1和t2的临时表 和t1有: id 3 score 4 id 6 score 7 和t2有: id 3 score 5 id 5 score 2 我最终会得到一个新

MySQL创建临时表时包含哪些数据?

每当MySQL生成临时表时,我一直在阅读有关VARCHAR字段被转换为CHAR字段的信息. 如果我有下表… >超过100K行 >十几个VARCHAR列设置为实际长度(例如,10个电话号码)> 5个VARCHAR列设置为15K(长度可以短至20但最高可达15K) 而且,假设我有这个问题…… >返回多个列,包括VARCHAR>加入了其

mysql – 从UNION创建临时表时遇到问题

我有一个UNION语句,它自己执行得很好: SELECT "1999999999" AS MobileNo, "Test" AS FirstName, "Last" AS LastName, "268" AS TemplateID, "" AS MISC1, "" AS MISC2 UNION SELECT cust.cellp AS MobileNo, acct.firstname

mysql – 获得每所学校前10名学生的平均成绩

我们有一所拥有38所小学的学区.孩子们参加了考试.学校的平均分布广泛,但我想比较每所学校的10名学生的平均分. 要求:仅使用临时表. 我这样做的工作量非常大,容易出错,如下所示. (sch_code =例如,9043;  – schabbrev =例如,“Carter”;  – totpct_stu =例如,61.3) DROP TEMPOR

如何理解存储过程中已存在的mysql临时表?

我使用mysql临时表来共享几个存储过程之间的一些中间数据.所有这些过程都使用单个数据库连接. 在每个SP中,我需要确定是否已存在mysql临时表.如果它已经存在,那么我将使用它的值,否则SP将创建&填写临时表&其他SP(当然在同一个连接上!)将使用临时表结果. 但我不知道如何检查临时表是

mysql – 如何在同一个查询中多次引用TEMPORARY表?

MySQL文档说:“你不能在同一个查询中多次引用TEMPORARY表.” 我知道之前有人问过这件事.但我无法找到以下具体解决方案. 我正在预选一张临时表 CREATE TEMPORARY TABLE preselection AS SELECT ...; 现在我想做一些(约20甚至30)工会 (SELECT FROM preselection ...) UNION (SELEC

在MySql中多次访问临时表

我试图使用临时表作为SELECT语句的中间结果持有者.问题是虽然我无法在其他查询语句中多次访问临时表,我希望这是可能的,即使临时表无用. 是否有替代MySql中的临时表,允许我提取我的SQL语句. 我不能使用存储过程(无法从公司使用的Web框架版本访问它们),我不想使用游标. 编辑: 好吧,我