我希望向我的 SSAS Cube (SSAS 2012) 添加一个计算,该计算将显示当前成员与该石斑鱼中所有其他成员的相对排名,而无需提前指定石斑鱼。
例如,假设我已经有一个Efficiency定义为 $$/hour 的计算。
我还想添加一个Efficiency Rank计算,它会告诉我当前成员在它设置中的相对位置。
我试过的语法是
RANK([Measures].[Efficiency].CurrentMember, [Measures].[Efficiency])
Run Code Online (Sandbox Code Playgroud)
我意识到这是不正确的。
我似乎无法在其他任何地方找到这方面的指南,所以我希望有一些既定的最佳实践或模式,因为这似乎是一个相对常见的业务需求。
我们已升级到 SQL 2012 并尝试将我们的 Dbs 反向工程到 Visio 2010。我使用 SQL 11 驱动程序设置了连接,而 Visio 抱怨不支持该驱动程序。
有人遇到过这个吗?
示例架构:
CREATE TABLE [dbo].[Base](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Option1ID] [int] NULL,
[Option2ID] [int] NULL,
[Option3ID] [int] NULL,
[Option1Name] [varchar] NULL,
[Option2Name] [varchar] NULL,
[Option3Name] [varchar] NULL,
[Option1LName] [varchar] NULL,
[Option2LName] [varchar] NULL,
[Option3LName] [varchar] NULL,)
Run Code Online (Sandbox Code Playgroud)
有没有办法让结果显示如下:
ID | OptionID | OptionName | OptionLName
Run Code Online (Sandbox Code Playgroud)
我尝试使用 UNION ALL 来实现这一点,但这意味着在我的示例中,在同一行上重复 3 次,在我的实际问题中,我必须这样做 10 次。由于遗留代码,我无法对表进行规范化。有没有办法只遍历 Base 行一次?
我重新组织了数据库中的一些表以使其更加灵活,但我不确定如何编写 SQL 以从中提取有意义的数据。
我有以下表格(为了更清楚的例子,有些缩写):
CREATE TABLE Loans(
Id int,
SchemaId int,
LoanNumber nvarchar(100)
);
CREATE TABLE SchemaFields(
Id int,
SchemaId int,
FieldName nvarchar(255)
);
CREATE TABLE LoanFields(
Id int,
LoanId int,
SchemaFieldId int,
FieldValue nvarchar(4000)
);
Run Code Online (Sandbox Code Playgroud)
使用以下数据:
INSERT INTO Loans (Id, SchemaId, LoanNumber) VALUES (1, 1, 'ABC123');
INSERT INTO SchemaFields (Id, SchemaId, FieldName) VALUES (1, 1, 'First Name');
INSERT INTO SchemaFields (Id, SchemaId, FieldName) VALUES (2, 1, 'Last Name');
INSERT INTO LoanFields (Id, LoanId, SchemaFieldId, FieldValue) VALUES (1, 1, 1, …Run Code Online (Sandbox Code Playgroud) 在安装 SQL Server 2012 期间,在 Collation 选项卡中,我可以在French_CI_AS和French_100_CI_AS之间进行选择。
它们是什么意思,哪个是新的?当没有代码时,它是比 100 新还是旧?
我有一个在 Windows 2008R2 上运行的 SQL Server 2012 实例,旁边还有另一个运行 SharePoint 的 SQL Server 2012 实例(我认为它是 SharePoint 2010)。
当我尝试访问时,http://localhost/Reports_<InstanceName>我得到:
Cannot connect to the configuration database.Google 表示该错误消息与 SharePoint 相关,因此我倾向于认为 SharePoint 正在劫持 SSRS 请求。
有没有我可以对 SSRS 或其他东西(可能是 IIS ??)进行的配置,让我可以访问报表服务器?
注意:我可以通过 SSMS 连接到 Reporting Services 就好了。
我有点好奇,具有 128 GB 数据库 RAM 大小的 SQL 2012 企业版之一是 370 GB 并且还在增长,锁 (OBJECTSTORE_LOCK_Manager) 内存管理员使用的内存量显示为 7466016 KB。我也可以通过查看性能计数器来确认select * from sys.dm_os_performance_counters where counter_name = 'Lock Memory (KB)'
但是,当我运行查询时
select count(*) from sys.dm_tran_locks
Run Code Online (Sandbox Code Playgroud)
它只显示了 16 个锁。那么什么是使用超过 7 GB 的锁。有办法查到吗?
这是否意味着一旦分配了锁的内存,SQL 还没有释放它?在过去的 1 小时内,我没有看到锁计数超过 500,但锁内存保持不变。
最大服务器内存为 106 GB,我们没有在内存中使用锁定页面,我在过去 12 小时内没有看到任何内存压力或错误日志中的任何错误。可用 MBytes 计数器显示超过 15 GB 的可用内存。
活动监视器始终显示 0 个等待任务,因此显然没有阻塞。
考虑到 SQL 服务器锁占用大约 100 字节的内存,7 GB 是大量内存,并试图找出谁在使用它。
我通过锁计数运行服务器仪表板报告最高事务,它说“当前系统上没有运行锁定事务。但是,锁内存仍然显示如上所述。数据库在夜间最忙。
sql-server-2008 sql-server memory sql-server-2008-r2 sql-server-2012
我使用 SQL Server 2008 R2 已经有一段时间了,它运行良好。现在我需要使用 SQL Server 2012。这会影响我现有的数据库吗?在运行 SQL Server 2008 R2 的计算机上安装 SQL Server 2012 涉及多少风险?
我知道当使用VARCHAR(MAX)/NVARCHAR(MAX)列时,数据被存储out of the row- 数据行将有一个指向存储“大值”的另一个位置的指针。
我有以下问题:
out of the row还是仅存储这些字段max?clustered index表的 来读取整个记录,那么存储在行外的字段是否也被读取?VARCHAR(MAX) 或 NVARCHAR(MAX) 被视为“大值类型”。大值类型通常存储在“行外”。这意味着...
我有一个 SQL Server 2012 SP2 企业版的实例,它消耗的内存比最大值高约 20GB。内存限制。实例限制为 65GB,但以下查询中使用的物理内存显示为 86GB
SELECT (physical_memory_in_use_kb/1024)/1024 AS [PhysicalMemInUseGB]
FROM sys.dm_os_process_memory;
GO
Run Code Online (Sandbox Code Playgroud)
服务器是具有 2 个 NUMA 节点的物理服务器。有没有一种方法可以找出正在消耗缓冲池之外的内存的东西(我假设这就是正在发生的事情)?
这是 DBCC MEMORYSTATUS 的输出:-

这是设置的内存限制:-

提前致谢。
更新:-我已经运行了 Aaron 建议的查询
SELECT TOP (20) * FROM sys.dm_os_memory_clerks ORDER BY pages_kb DESC
Run Code Online (Sandbox Code Playgroud)
这是输出:-

pages_kb 的总和达到 ~60GB
更新 2:- DBCC MEMORYSTATUS 的完整输出在这里:- http://pastebin.com/nGn6kXEc
更新 3:- 此处在 excel 文件中输出 Shanky 的脚本:- http://jmp.sh/LKRlH4K
更新 4:- 输出的屏幕截图:-
SELECT (physical_memory_in_use_kb/1024)/1024 AS [PhysicalMemInUseGB]
FROM sys.dm_os_process_memory;
GO
Run Code Online (Sandbox Code Playgroud)

所以这似乎表明 SQL Server 正在使用超过 65GB 的设置。
sql-server-2012 ×10
sql-server ×6
memory ×2
collation ×1
installation ×1
mdx ×1
pivot ×1
ssas ×1
ssrs ×1
t-sql ×1
varchar ×1
visio ×1