我GROUP BY在 MySQL中遇到困难。
我的数据库设置:
client_visit
- id
- member_id
- status_type_id (type_of_visit table)
- visit_starts_at
- visit_ends_at
member
- id
schedule_event
- id
- member_id
- starts_at
- ends_at
type_of_visit
- id
- type (TYPE_BOOKED, TYPE_PRESENT etc)
Run Code Online (Sandbox Code Playgroud)
就这个问题而言:a在给定时间member教一门课或领导一项活动 (a schedule_event)。Aclient报名参加此课程或活动。
例如:
客户 A、B 和 C 预订访问,而那些访问client_visit由schedule_event_id和组成的表member_id,因此我们知道哪个班级和哪个成员正在教授/或进行活动。
现在,我们想知道给定成员花费在客户注册的教学/领导活动上的总时间(基于client_visit type_of_visit相当于“预订”或“出席”的列)。我们将把成员 ID 82 作为我们的测试用例。
会员 ID 82 在两个不同的班级有 4 个客户,所以如果每个班级花费 2 小时 15 分钟(8100 秒),那么总时间应该是 16200 秒。
首先是我的查询: …
我有一个运行在 3 个不同服务器上的 3 节点副本集。我已经完成了设置,一切都很好。现在我想给我的用户两个连接字符串:
连接到这个“xyz”进行写入
连接到此“abc”以获取只读流量
我还尝试为每个连接设置一个 CNAME,以便将来能够灵活地更改。
提前感谢并感谢您的时间。
每当我双击 SSMS 维护计划中的通知操作员任务时,我都会收到一条错误消息,显示“无法显示此任务的编辑器” 。
属性 IsMailHost 不可用于数据库“[msdb]”。该对象的该属性可能不存在,或者由于访问权限不足而无法检索。(微软.SqlServer.Smo)
数据库邮件已配置并且工作正常。
我正在使用 SQL Server 2016 (13.0.4411.0) 和 SSMS 13.0.16106.4。
通过 PowerShell 询问 IsMailHost 属性似乎表明 IsMailHost 属性为 true。
$db = SqlServer\Get-SqlDatabase -ServerInstance sqlserver1 -Name msdb
Write-Host $db.IsMailHost
Run Code Online (Sandbox Code Playgroud)
上面的脚本返回True。
如果我尝试在旧的 SQL 2008 服务器上使用 SSMS 10.0.5538.0 打开通知操作员任务,它工作正常,但使用 SSMS 13.0.44110.0,我会收到相同的错误消息。我开始认为这是 SSMS 构建的错误,而不是服务器的配置问题。
我们有一项工作没有计划运行,但我们怀疑是另一项工作启动了它。没有作业历史记录,但它确实出现在错误日志中。我们如何知道这是否正在被另一个工作调用?我知道我们可以使用 sp_start_job 在作业步骤中立即调用作业,但如果是这种情况,我们如何找到它?
而且,为什么运行的作业没有任何历史记录?
Error log entry:
2017-05-01 10:01:50.40 spid6s SPID: 131 ECID: 0 Statement Type: ALTER INDEX Line #: 1
2017-05-01 10:01:50.40 spid6s Input Buf: Language Event: EXECUTE [msdb]. dbo.IndexOptimize @Databases = 'Database1,Database2'
Run Code Online (Sandbox Code Playgroud) 我发现了SQL Server Management Studio的类似问题。但我在 macOS 上使用最新的 Azure Data Studio。我们使用本地 SQL Server(不是 Azure 云)。
如何使用 Azure Data Studio 从现有数据库生成 ERD?
当我启动时mysqladmin,它会打印出一些统计信息,包括“每秒平均查询数”:
# mysqladmin --defaults-file=../mylogin.cnf status
Uptime: 4568115 Threads: 859 Questions: 3703806462 Slow queries: 19415 Opens: 10300505 Flush tables: 247 Open tables: 2000 Queries per second avg: 810.795
Run Code Online (Sandbox Code Playgroud)
我可以在 SQL 查询中检索“每秒平均查询数”值吗?我们使用 MariaDB 10.1.x
我正在 SQL 服务器中创建代理用户。我运行下面的 SQL 但它失败了,因为我的域名中有破折号。
CREATE LOGIN [ABC-SEN-DEA\proxyssisuser] WITH PASSWORD='Password'
Run Code Online (Sandbox Code Playgroud)
消息 15006,级别 16,状态 1,第 1 行
“ABC-SEN-DEA\proxyssisuser”不是有效名称,因为它包含无效字符。
请帮助如何纠正此错误。
我正在参加 Microsoft 认证 70-461 的模拟测试,并想确认我所看到的是否是错误(这是来自 Microsoft Press 的官方书籍,第九次印刷。我在现有勘误表中没有看到这一点)。
题:
您正在向
Hovercraft数据库添加表。您可以使用以下语句创建表:Run Code Online (Sandbox Code Playgroud)Create Table Hovercraft.Testing ( TestIdentifier uniqueidentifier DEFAULT NEWSEQUENTIALID() PRIMARY KEY, HullId tinyint NOT NULL, TestDate date NOT NULL, Registration nvarchar(8) NOT NULL, Notes nvarchar(max) )您可以使用以下哪个语句向该表中插入数据?(每个正确答案都提供一个完整的解决方案。选择两个。)
选择是:
INSERT INTO Hovercraft.Testing (Notes, HullID, TestDate, Registration,)
VALUES (N'Hovercraft requires maintenance.', 142, '20120715', N'AAA320')
INSERT INTO Hovercraft.Testing (HullID, TestDate, Registration, Notes)
VALUES (124, '20120722', N'AAA321', N'Hovercraft in good condition. Next service in six months' time')
INSERT INTO Hovercraft.Testing (HullID, TestDate, Registration, …
我已经实现了 XE 来捕获我的实例上的阻塞(根据这篇很棒的文章https://www.brentozar.com/archive/2014/03/extended-events-doesnt-hard/#comment-2470072。)
我这样做是因为我一直关注阻塞状态,使用查询的这种美:
select
db_name(database_id) DB,
object_name(object_id) Obj,
row_lock_count + page_lock_count No_Of_Locks,
row_lock_wait_count + page_lock_wait_count No_Of_Blocks,
row_lock_wait_in_ms + page_lock_wait_in_ms Block_Wait_Time_in_ms,
index_id
from
sys.dm_db_index_operational_stats(NULL,NULL,NULL,NULL)
order by
Block_Wait_Time_in_ms desc
Run Code Online (Sandbox Code Playgroud)
偶尔会在文件中记录一些阻塞,但没有我预期的那么多。我的期望是查询中 No_Of_blocks 中的数字将与根据 XE 记录到文件中的块数相对应。
与查询相比,XE 是否可能无法捕获任何内容?有任何想法吗?感谢您的反馈意见!
我对 DBA 和 SQL 没有真正的经验,所以我需要你的一些建议。
我有一个生产数据库备份文件,但是它非常大,所以当我执行恢复时,例如,在测试环境中制作数据副本 - 恢复需要很长时间。
我读到:是否可以从备份中部分恢复数据?
它与我想做的类似,但不完全等效。
为了清楚起见,我需要回答以下问题:是否有可能用比备份文件中更少的记录来恢复数据库?
比如备份文件表有100万条记录,我只想恢复1k条记录。