眼前多少难甘事,自古男儿当自强。这篇文章主要讲述Citrix SQL数据如何进行多表联查相关的知识,希望能为你提供帮助。
【Citrix SQL数据如何进行多表联查】除了通过DDC控制台查看登陆用户相关信息,我们还可以通过Citrix 连接的SQL数据库去查看。通过数据库去查看,可以看到更多的信息。
这里示例一个多表查询案例。
--查询用户历史会话信息
SELECTtop(20)
c.Clientname 客户端名称,
c.ClientAddress 客户端IP地址,
m.Name AS VDI桌面,
u.UserName AS 用户名,
c.Protocol 协议,
c.IsReconnect,
s.startDate AS SessionStartdate,
c.logonenddate,
c.disconnectdate,
s.enddate AS SessionEndDate,
c.sessionkey
FROM
[CitrixRofficeMonitoring].[MonitorData].[Connection] AS [c]
LEFT JOIN [CitrixRofficeMonitoring].[MonitorData].[Session] AS [s] ON s.SessionKey = c.SessionKey
LEFT JOIN [CitrixRofficeMonitoring].[MonitorData].[Machine] AS [m] ON s.MachineId = m.Id
LEFT JOIN [CitrixRofficeMonitoring].[MonitorData].[User] AS [u] ON s.UserId = u.Id
WHERE c.Protocol=HDXAND u.UserName=dengpengand m.Name is not null
ORDER BY S.StartDate DESC
如下再做一个注释
--查询用户历史会话信息
SELECTtop(20)##如下表示要查询显示的参数
c.Clientname 客户端名称,##显示客户端名字,别名为客户端名称
c.ClientAddress 客户端IP地址,
m.Name AS VDI桌面,
u.UserName AS 用户名,
c.Protocol 协议,
c.IsReconnect,
s.startDate AS SessionStartdate,
c.logonenddate,
c.disconnectdate,
s.enddate AS SessionEndDate,
c.sessionkey###需要查询什么就添加,注意最后显示一行的不需要加标点符号,按下数据库别名后,会自动弹出搜索框
FROM##多表进行联查,LEFT代表左连接,显示以左边为准
[CitrixRofficeMonitoring].[MonitorData].[Connection] AS [c]##数据库别名为c,这里需要注意,请替换为实际数据库名称后进行查询。
LEFT JOIN [CitrixRofficeMonitoring].[MonitorData].[Session] AS [s] ON s.SessionKey = c.SessionKey##数据库别名为sc连接到s表
LEFT JOIN [CitrixRofficeMonitoring].[MonitorData].[Machine] AS [m] ON s.MachineId = m.Id##数据库别名为m
LEFT JOIN [CitrixRofficeMonitoring].[MonitorData].[User] AS [u] ON s.UserId = u.Id####数据库别名为u
--WHERE c.Protocol=HDX##过滤连接协议AND u.UserName=dengpeng##过滤用户名and m.Name is not null
ORDER BY S.StartDate DESC
注意代码前面加上-- 代表注释
如下图,用SQL客户端连接数据库后,新建查询,按Ctrl+F键进行查询替换为实际数据库名称
推荐阅读
- JavaWeb项目-疫情环境下校园宿舍管理系统-附源码-毕业设计
- 服务器数据恢复服务器进水导致多块硬盘同时掉线,服务器崩溃的数据恢复案例
- PHP 零基础入门笔记(12)(数组 array)
- #yyds干货盘点# Java 垃圾回收器之G1详解
- redis优化系列基于docker搭建Redis主从
- 软件测试系列十《压力测试方案》
- FreeRTOS快速入门-初探FreeRTOS
- C语言的预编译(预处理)#define
- 类和对象—5