-
sql-server – 为什么子查询使用并行性而不是连接?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:140
为什么SQL Server在运行使用子查询的查询时会使用并行性,但在使用连接时却不然?连接版本以串行方式运行,完成时间大约需要30倍. 加入版本:~30secs 子查询版本: 1秒 编辑: Xml版本的查询计划: JOIN version SUBQUERY version 解决方法 正如评论中已经指出[详细]
-
sql – subselect vs outer join
所属栏目:[MsSql教程] 日期:2020-12-31 热度:107
考虑以下2个查询: select tblA.a,tblA.b,tblA.c,tblA.dfrom tblAwhere tblA.a not in (select tblB.a from tblB)select tblA.a,tblA.dfrom tblA left outer join tblBon tblA.a = tblB.a where tblB.a is null 哪个会表现更好?我的假设是,一般情况下,连接会[详细]
-
sql-server – 尝试查找值上次更改的时间
所属栏目:[MsSql教程] 日期:2020-12-31 热度:192
我有一个具有ID,值和日期的表.此表中有许多ID,值和日期. 记录会定期插入此表中. ID将始终保持不变,但有时值会发生变化. 如何编写一个查询,它将为我提供ID以及值更改的最近时间?注意:该值将始终增加. 从这个样本数据: Create Table Taco ( Taco_ID int,Taco[详细]
-
sql-server – 为什么0等于空字符串?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:166
我需要一些帮助来找到为什么以下T-SQL语句返回1(true): SELECT IIF( 0 = '',1,0) 我猜有人改变了ANSI选项,例如SET ANSI_NULLS或导致该行为的其他东西. 我的问题是我正在加入一些值,在最后一行中我有值由0和”值连接,这是不正确的. 解决方法 这只是记录在案的[详细]
-
sql – 如何从包含百万条记录的数据库中选择第一个“N”条记录?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:74
我有一个填充了百万条记录的oracle数据库.我正在尝试编写一个SQL查询,该查询根据特定条件从数据库返回第一个“N”个排序记录(比如100个记录). SELECT * FROM myTable Where SIZE 2000 ORDER BY NAME DESC 然后以编程方式选择前N个记录. 这种方法的问题是: 查[详细]
-
如何让SQL识别WHERE column = NULL?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:156
在Microsoft SQL中,我有以下声明(粗略地): UPDATE sometable SET somecolumn = @somevalue WHERE somecolumn = NULL; @somevalue先前已在脚本中设置. 运行正常,SQL告诉我零行受影响.有五行是somecolumn是NULL.我究竟做错了什么? 解决方法 您必须使用IS NULL[详细]
-
实体框架 – 具有多个数据库/ DbContext的EF代码优先迁移
所属栏目:[MsSql教程] 日期:2020-12-31 热度:134
我有两个数据库,每个数据库都有自己的dbcontext.我已经设置了两个迁移配置.我可以为第一个db ust罚款添加迁移(Add-Migration DB1_InitialCreate -ConfigurationTypeName DB1Configuration).当我尝试使用第二个db创建初始迁移时:Add-Migration DB2_InitialCre[详细]
-
sql-server – 在SQL Server 2005上获得最少多列的最有效方法是
所属栏目:[MsSql教程] 日期:2020-12-31 热度:138
我处于这样一种情况,我希望从6列中获得最小值. 到目前为止,我已经找到了三种方法来实现这一目标,但我对这些方法的性能表示担忧,并希望知道哪种方法对性能更好. 第一种方法是使用a big case statement.这是一个包含3列的示例,基于上面链接中的示例.我的案例陈[详细]
-
sql-server – 如何配置存储过程
所属栏目:[MsSql教程] 日期:2020-12-31 热度:73
我正在使用SQL Server 2012,并想知道如何配置存储过程 例如,分析器可以捕获存储过程中的每个单独的SQL语句,它是什么,以及运行等多长时间? 我正在尝试诊断合并复制存储过程,这必须捕获合并代理的完整运行的一部分.似乎不可能抓住性能问题的存储过程并再次运行[详细]
-
sql-server – SQL Server的MAXDOP设置算法
所属栏目:[MsSql教程] 日期:2020-12-31 热度:58
在设置新的SQL Server时,我使用以下代码来确定MAXDOP设置的良好起点: /* This will recommend a MAXDOP setting appropriate for your machine's NUMA memory configuration. You will need to evaluate this setting in a non-production environment befor[详细]
-
sql-server – Windows XP连接限制是否适用于Sql Server连接?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:100
我在 Windows XP上安装了Sql Server 2005,作为小型工作组中的服务器.由于XP有10个计算机同时连接的限制,我的问题是,这个限制是否也适用于通过TCP / IP到Sql Server的并发连接?或者此限制仅适用于与共享,打印机等的连接? 解决方法 此 article表示最多10个连[详细]
-
数据库 – 关于MSSQL Server的高可用性
所属栏目:[MsSql教程] 日期:2020-12-31 热度:137
已经在 MySQL中使用:主服务器和辅助服务器之间的实时复制(同步)使用主命令和从属命令完成.那么MsSQL的等价功能是什么?应该使用哪种复制方法进行实时同步?它是标准版支持还是我需要购买MsSQL企业版? 解决方法 您正在寻找什么版本的MSSQL? SQL 2012 HA选项[详细]
-
sql-server – 如何取回一些已删除的记录?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:128
我错误地从远程SQL Server 2008表中删除了大约2,000,000条记录.服务器不授予我访问服务器端备份文件的权限. 有没有办法找回这些记录? 解决方法 您的数据库是否处于完全恢复模式? 如果是,您是否在进行事务日志备份? 如果是,您是否有Quest LiteSpeed,Red Gat[详细]
-
INNER JOIN和OUTER JOIN有什么区别?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:99
我是SQL的新手,想知道这两种JOIN类型有什么区别? SELECT * FROM user uINNER JOIN telephone t ON t.user_id = u.idSELECT * FROM user uLEFT OUTER JOIN telephone t ON t.user_id = u.id 我什么时候应该使用其中一个? 解决方法 内连接仅选择连接键位于两[详细]
-
数据库设计 – 每个表都应该有一个单字段代理/人工主键吗?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:72
我理解代理/人工密钥的一个好处 – 它们不会改变,这可能非常方便.无论是单场还是多场,都是如此 – 只要它们是“人造的”. 但是,将自动递增整数字段作为每个表的主键有时似乎是一个政策问题.拥有这样一个单字段密钥以及为什么(或者为什么不是),这总是最好的主[详细]
-
sql-server – 我们应该将数据库移动到我们的(共享)Web主机吗?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:77
我工作的公司过去八年左右一直在使用Access数据库(我只需忍受它五个).我们正在开始在线订购系统的工作,所以它是时间(实际上,过去的时间)继续前进到更强大的东西.我们有一台带有MSSQL 2k的SBS 2003服务器,我们还通过我们的Web主机拥有一个MSSQL 2005数据库,因[详细]
-
sql-server – 什么时候索引不值得更新
所属栏目:[MsSql教程] 日期:2020-12-31 热度:184
是否有一个可接受的读写比率,使得一个指数值得,或者它的削减和干燥程度是否低于那个? 我用这个: WITH UnusedIndexQuery ( Object_ID,ObjectName,IndexName,Index_ID,Reads,Writes,Rows ) AS ( SELECT s.object_id,objectname = OBJECT_NAME(s.OBJECT_ID),in[详细]
-
sql-server – 从SQL Server事务日志文件中恢复已删除的行
所属栏目:[MsSql教程] 日期:2020-12-31 热度:153
我需要从SQL Server 2000事务日志文件中恢复已删除的数据.日志文件为3.3GB.我尝试了通常的SQL Log Rescue,但它一直与outOfMemory异常崩溃.我也尝试在不同的机器上使用相同的错误. 我试过ApexSQL Recover,似乎工作,但它是一个试验,因此只显示每第10行.如果我找[详细]
-
sql-server – CPU利用率是否影响外国NUMA访问的成本?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:187
脚本 假设我有一个带有4个套接字的SQL Server,每个1个NUMA节点.每个插槽有4个物理内核.总共有512 GB的内存,因此每个NUMA节点有128 GB的RAM. 密钥表被加载到第一个NUMA节点中. 题 假设我们从该表中读取了大量流量.如果拥有NUMA节点的套接字的所有物理内核具有1[详细]
-
sql-server – 添加通配符(或顶部)时SQL Server查询的大幅减速
所属栏目:[MsSql教程] 日期:2020-12-31 热度:123
我有一个拥有2000万只动物的动物园,我在我的SQL Server 2005数据库上进行跟踪.其中约1%是黑色的,其中约1%是天鹅.我想得到所有黑天鹅的细节,所以,不想淹没我做的结果页面: select top 10 * from animal where colour like 'black' and species like 'swan'[详细]
-
sql-server – EXISTS(SELECT 1 …)vs EXISTS(SELECT * …)一个
所属栏目:[MsSql教程] 日期:2020-12-31 热度:189
每当我需要检查表中某些行的存在时,我倾向于总是写一个像下面这样的条件: SELECT a,b,c FROM a_table WHERE EXISTS (SELECT * -- This is what I normally write FROM another_table WHERE another_table.b = a_table.b ) 其他一些人写道: SELECT a,c FROM[详细]
-
SQL Server – 缺少NATURAL JOIN / x JOIN y USING(字段)
所属栏目:[MsSql教程] 日期:2020-12-31 热度:93
我刚刚阅读了自然连接/使用 – SQL92的功能,这些功能(遗憾的是?)缺少SQL Server当前的保留节目. 有没有人来自支持SQL Server(或其他不支持的DBMS)的DBMS – 它们听起来有用,还是一堆蠕虫(听起来也可能!)? 解决方法 我从不使用NATURAL JOIN,因为我不喜欢连[详细]
-
sql-server – 你如何在本地加载dev数据库(服务器)?
所属栏目:[MsSql教程] 日期:2020-12-31 热度:192
哇,这个标题立即给了我“你问的问题似乎是主观的,可能会被关闭.” 无论如何,经过一番搜索和阅读,我决定问一下. 来自我的问题:What are the first issues to check while optimizing an existing database?,归结为必须强调加载作为备份.bak文件接收的本地SQL[详细]
-
sql-server – 由于’XTP_CHECKPOINT’,数据库’database_name’
所属栏目:[MsSql教程] 日期:2020-12-31 热度:59
我有一个关于XTP_CHECKPOINT的问题. 我正在使用SQL Server 2014.我有一个处于SIMPLE恢复模型模式的数据库.它也在被复制. 没有公开交易.我运行DBCC OPENTRAN并返回: “No active open transactions.” 但每当我尝试创建或删除表或删除数据时,我都会收到此消息[详细]
-
sql-server – 为什么LEN()函数严重低估了SQL Server 2014中的基
所属栏目:[MsSql教程] 日期:2020-12-31 热度:81
我有一个带有字符串列的表和一个检查具有一定长度的行的谓词.在SQL Server 2014中,无论我检查的长度如何,我都会看到1行的估计值.这产生了非常糟糕的计划,因为实际上有数千甚至数百万行,SQL Server正在选择将此表放在嵌套循环的外侧. 是否有SQL Server 2014的[详细]
