问题标签 [sqlperformance]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 从 T 中选择 a + 从 T 中选择 b,或从 T 中选择 a、b?H2 数据库
使用 H2 数据库哪个更快?
或者
sql - 在 EF SQL 查询中,两个“使用”块或一个块要快得多,还是它们的速度差不多?
使用 Entity Framework 4.0 生成 SQL 查询的以下两种查询方法中的哪一种明显更快?第一个使用两个“使用”块,而第二个只使用一个。这两种方法都需要两次访问数据库,但第一种方法关闭连接两次,而第二种方法关闭一次。我猜这两种方法的速度大致相同,并且执行速度彼此之间没有显着差异——真的吗?但是,假设这些方法(它们是 Web 服务方法)被非常频繁地访问,大约每秒 2000 次,因此每一点性能都会有所帮助。那么我应该将版本 I 中的代码重写为版本 II 吗?
谢谢你。
mysql - 使用 OR 条件优化 DISTINCT SQL 查询
我有以下 SQL 查询:
我试图实现的是获取所有没有记录的唯一业务密钥 concept=case AND attrib=status AND value=closed。在 MySQL 中使用 500 000 条记录和所有唯一业务键运行此查询非常慢:大约 11 秒。
我将索引放置到 business_key 列、概念、属性和值列。我还尝试使用所有三列(概念、属性、值)的组合索引,但结果是相同的。
这是EXPLAIN EXTENDED
命令的屏幕截图:
有趣的是,在没有 distinct 说明符的情况下运行查询会导致执行速度非常快。
我也试过这个:
更糟糕的结果:大约 25 秒
sql - 检查多个表中的数据是否存在
要检查多个表(10 - 15 个表)中是否存在 Id,最好的选择是什么?在性能方面。
- 使用联接
- 对每个表使用单独的查询(从 Spring 的 DAO 调用)。
- 使用存在。
需要根据来自多个表的 Id 的存在来做出决定。
mysql - SQL 性能 - 联合和子选择
我有三个表,它们有一个不是其标识符的公共字段。例如:
我正在尝试构建一个报告,列出下个月到期的所有项目。我不认为连接会起作用,因为三个表之间没有外键关系。我目前倾向于在 expiration_date 添加索引并使用联合和 3 个子选择,但我担心这会产生糟糕的性能。有更好的解决方案吗?
sql-server - SQL Server 2005 CTE 执行大量逻辑读取
我有一个 CTE 查询似乎会导致大量逻辑读取(或者它可能不会)。我已经运行了 SQL Server Profiler 跟踪,并且此查询似乎一直是运行时间最长的查询之一。(每次点击页面都会调用它)
基本上我想知道我的 CTE 是否正确优化,或者可以改进。
如果我离开这条线:
出,然后逻辑读取的数量从〜8500跳到〜13000
(查询所做的是在 ASP.NET 中构建下拉菜单层次结构)如果逻辑读取没问题,那么我假设我必须想出另一种方法来缓存/存储这个菜单(更新 2 或一周3次)
谢谢
ContentPage 的表结构
sql-server - 关于 Sql Profiling
我想知道如何使用 sql server 2008 的 sql 分析工具。对于 anjlab sql profiler,应该设置哪些过滤器才能获得准确的查询?
sql - 为什么过滤表的内连接比不过滤的慢?
WINDOWS 2008 上的 SQL Server 2008
请比较以下sql:
1.
2.
3.
鉴于 Trades 有数百万行,而 UserAccount 是一个非常小的表。AccID 可以是重复的。
执行结果:
- 234734792
- 8806144
- 8806144
我预计 No.2 至少可以和 No.1 一样快,但实际上它比 No.3 慢得多,甚至慢得多 时间消耗:
- 2 秒
- 10 秒
- 8 秒
有人可以解释原因吗?当我需要像 UserID=1126 这样的过滤器时,是否可以让它更快?
mysql - What is the best performance of design for my tables?
I have 3 tables that they can be on 1table. What is the best performance for its design? I need a fast database on search and read, not on insert.
- These 3 tables will be read too more than be written
- These 3 tables have more than 5 millions records
- Most of the fields that are available in this table "p_apartmentbuy" are used in the search clause query (they have been indexed) And include some fields that are shown in the search result
- The fields in this table "p_apartmentbuydetail" aren't used in search clause
- "pf_contact" table will be used to show on some search result and usually some columns are null
And what is differences between a "keyname with several indexes" and "several keynames with one index for each one" (like attachment photo).
sql - 在 SQL Server 2000 中处理大型表的性能
我有一张tbl_ECR_ProductData
近 92356143 行的表。每周将 100000 行导入此表。
该表有 16 列,其中 2 列构成主键,其余列的类型为varchar
.
我的问题是当我根据剩余的列值搜索表格时.. 它需要很长时间,将近 10 分钟。
我怎样才能最大限度地减少时间?请在这方面帮助我..感谢您的帮助...提前致谢!表结构如下
CREATE TABLE [tbl_ECR_ProductData](
[Serial Number] [varchar](255) NOT NULL,
[Act Number] [varchar](255) NULL,
[Act Date] [datetime] NULL,
[Act Location] [varchar](255) NOT NULL,
[Manufacturer] [varchar](255) NULL,
[ManufacturerPN] [varchar](255) NULL,
[Act Description] [varchar](255) NULL,
[Act PtNumber] [varchar](255) NULL,
[Act Code] [varchar](255) NULL,
[Act DateCode] [varchar](255) NULL,
[Pmrl] [varchar](255) NULL,
[Act ReceiveDate] [datetime] NULL,
[Act Channel] [varchar](255) NULL,
[Act Supplier] [varchar](255) NULL,
[ImportDate] [datetime] NULL
CONSTRAINT [PK_tbl_ECR_ProductData] PRIMARY KEY CLUSTERED
(
[Serial Number] ASC,
[Act Location] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 90) ON [PRIMARY]
)