标签: temp-tables

PostgreSQL临时表

我需要执行250万次查询.此查询生成我需要的一些行,AVG(column)然后使用它AVG来从低于平均值的所有值中过滤表.然后我需要将INSERT这些过滤结果放入表格中.

以合理的效率执行此类操作的唯一方法似乎是TEMPORARY TABLE为每个query-postmaster python-thread 创建一个.我只是希望这些TEMPORARY TABLEs不会被持久化到硬盘驱动器(根本)并且将保留在内存(RAM)中,当然,除非它们没有工作内存.

我想知道TEMPORARY TABLE是否会引发磁盘写入(这会干扰INSERTS,即整个进程缓慢)

postgresql optimization performance temp-tables

68
推荐指数
2
解决办法
8万
查看次数

如何从临时表中检索字段名称(SQL Server 2008)

我正在使用SQL Server 2008.假设我创建了一个像这样的临时表:

create table #MyTempTable (col1 int,col2 varchar(10))
Run Code Online (Sandbox Code Playgroud)

如何动态检索字段列表?我想看到这样的事情:

Fields:
col1
col2
Run Code Online (Sandbox Code Playgroud)

我在考虑查询sys.columns但它似乎没有存储任何关于临时表的信息.有任何想法吗?

sql sql-server temp-tables sql-server-2008

67
推荐指数
4
解决办法
10万
查看次数

使用select中的索引在MySQL中创建临时表

我有一个存储函数,我使用临时表.出于性能原因,我需要该表中的索引.不幸的是,我无法使用,ALTER TABLE因为这会导致隐式提交.

所以我在寻找的语法来添加INDEXtempid创建过程中.任何人都可以帮忙吗?

CREATE TEMPORARY TABLE tmpLivecheck 
(
    tmpid INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY
)
SELECT *
FROM   tblLivecheck_copy
WHERE  tblLivecheck_copy.devId = did;
Run Code Online (Sandbox Code Playgroud)

mysql ddl temp-tables

62
推荐指数
3
解决办法
9万
查看次数

有没有办法获取SQL Server中所有当前临时表的列表?

我意识到临时表是会话/连接绑定的,不可见或可从会话/连接访问.

我有一个长期运行的存储过程,在各个阶段创建临时表.

有没有办法可以看到当前临时表的列表?我需要什么特权才能这样做?

或者,

有没有办法可以看到正在运行的存储过程中执行的特定SQL语句?该过程作为SQL Server中的计划作业运行.

我正在使用SQL Server 2000.

谢谢你的指导.

sql sql-server sql-server-2000 temp-tables

61
推荐指数
3
解决办法
10万
查看次数

EF4 - 选定的存储过程不返回任何列

我在一个存储过程中查询,该存储过程使用一些动态SQL调用某些链接服务器.我知道EF不喜欢这样,所以我特意列出了所有要返回的列.然而,它仍然不喜欢这样.我在这做错了什么?我只是希望EF能够检测从存储过程返回的列,以便我可以创建我需要的类.

请参阅以下代码,它构成了我的存储过程的最后几行:

SELECT
    #TempMain.ID,
    #TempMain.Class_Data,
    #TempMain.Web_Store_Class1,
    #TempMain.Web_Store_Class2,
    #TempMain.Web_Store_Status,
    #TempMain.Cur_1pc_Cat51_Price,
    #TempMain.Cur_1pc_Cat52_Price,
    #TempMain.Cur_1pc_Cat61_Price,
    #TempMain.Cur_1pc_Cat62_Price,
    #TempMain.Cur_1pc_Cat63_Price,
    #TempMain.Flat_Length,
    #TempMain.Flat_Width,
    #TempMain.Item_Height,
    #TempMain.Item_Weight,
    #TempMain.Um,
    #TempMain.Lead_Time_Code,
    #TempMain.Wp_Image_Nme,
    #TempMain.Wp_Mod_Dte,
    #TempMain.Catalog_Price_Chg_Dt,
    #TempMain.Description,
    #TempMain.Supersede_Ctl,
    #TempMain.Supersede_Pn,
    TempDesc.Cust_Desc,
    TempMfgr.Mfgr_Item_Nbr,
    TempMfgr.Mfgr_Name,
    TempMfgr.Vendor_ID
FROM
    #TempMain
        LEFT JOIN TempDesc ON #TempMain.ID = TempDesc.ID
        LEFT JOIN TempMfgr ON #TempMain.ID = TempMfgr.ID
Run Code Online (Sandbox Code Playgroud)

sql-server temp-tables entity-framework-4

60
推荐指数
3
解决办法
4万
查看次数

你能在SQL中定义"文字"表吗?

是否有任何SQL子查询语法允许您从字面上定义临时表?

例如,像

SELECT
  MAX(count) AS max,
  COUNT(*) AS count
FROM
  (
    (1 AS id, 7 AS count),
    (2, 6),
    (3, 13),
    (4, 12),
    (5, 9)
  ) AS mytable
  INNER JOIN someothertable ON someothertable.id=mytable.id
Run Code Online (Sandbox Code Playgroud)

这将节省必须执行两个或三个查询:创建临时表,将数据放入其中,然后在连接中使用它.

我正在使用MySQL,但会对其他可以做类似事情的数据库感兴趣.

mysql sql subquery temp-tables

55
推荐指数
6
解决办法
2万
查看次数

在SQL中创建临时表

我正在尝试创建一个临时表,只选择某个数据register_type.我写了这个查询,但它不起作用:

$ CREATE TABLE temp1
(Select 
    egauge.dataid,
    egauge.register_type,
    egauge.timestamp_localtime,
    egauge.read_value_avg
from rawdata.egauge
where register_type like '%gen%'
order by dataid, timestamp_localtime ) $
Run Code Online (Sandbox Code Playgroud)

我正在使用PostgreSQL.
你能告诉我查询有什么问题吗?

sql postgresql temp-tables

49
推荐指数
2
解决办法
8万
查看次数

SQL服务器中的临时表导致"已存在名为'的对象错误

我在SQL Server中有以下问题,我有一些看起来像这样的代码:

DROP TABLE #TMPGUARDIAN
CREATE TABLE #TMPGUARDIAN(
LAST_NAME NVARCHAR(30),
FRST_NAME NVARCHAR(30))  

SELECT LAST_NAME,FRST_NAME INTO #TMPGUARDIAN  FROM TBL_PEOPLE
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我收到一个错误'数据库中已经有一个名为'#TMPGUARDIAN'的对象'.谁能告诉我为什么我会收到这个错误?

sql t-sql sql-server temp-tables

44
推荐指数
3
解决办法
15万
查看次数

临时表是否是线程安全的?

我正在使用SQL Server 2000,并且许多存储过程都广泛使用临时表.数据库有很多流量,我担心创建和删除临时表的线程安全性.

假设我有一个存储过程,它创建了一些临时表,它甚至可以将临时表连接到其他临时表等.还可以说两个用户同时执行存储过程.

  • 是否有可能一个用户运行sp并创建一个名为#temp的临时表,另一个用户运行相同的sp但是因为数据库中已经存在一个名为#temp的表而被停止了?

  • 如果同一个用户在同一个连接上执行两次相同的存储过程怎么样?

  • 是否有任何其他奇怪的场景可能导致两个用户查询相互干扰?

sql-server multithreading temp-tables

43
推荐指数
4
解决办法
2万
查看次数

用什么?查看或临时表

我有一个问题来决定是使用视图还是临时表.

我有一个存储过程,我从程序调用.在该SP中,我将长查询的结果存储在临时表中,命名列并在该表上进行另一个查询,将结果存储在标签或网格视图或其他内容中,然后删除临时表.我还可以将查询结果存储在视图中并对该视图进行查询.那么什么是更好或者在什么情况下我必须使用VIEW/Temp表.

根据我的研究,视图具有以下优点:安全性,简单性和列名称规范.我的临时表也完成了所有这些(根据我的意见).

sql sql-server view temp-tables

42
推荐指数
3
解决办法
3万
查看次数