klsql2 实用工具中的 SQL 查询例子

该部分显示 SQL 查询的例子,通过 klsql2 实用工具执行。

以下例子阐述了对过去七天发生在设备上的事件的获取,并根据事件发生时间顺序显示事件。首先显示最近的事件。

Microsoft SQL Server 的示例:

SELECT

/* 事件标识 */

e.nId,

 

/* 事件发生的时间 */

e.tmRiseTime,

 

/* 事件类型的内部名称 */

e.strEventType,

 

/* 事件的显示名称 */

e.wstrEventTypeDisplayName,

 

/* 事件的显示描述 */

e.wstrDescription,

 

/* 事件所在的组名称 */

e.wstrGroupName,

 

/* 发生事件的设备的显示名称 */

h.wstrDisplayName,

CAST(((h.nIp / 16777216) & 255) AS varchar(4)) + '.' +

CAST(((h.nIp / 65536) & 255) AS varchar(4)) + '.' +

CAST(((h.nIp / 256) & 255) AS varchar(4)) + '.' +

 

/* 发生事件的设备的 IP 地址 */

CAST(((h.nIp) & 255) AS varchar(4)) as strIp

FROM v_akpub_ev_event e

INNER JOIN v_akpub_host h ON h.nId=e.nHostId

WHERE e.tmRiseTime>=DATEADD(Day, -7, GETUTCDATE())

ORDER BY e.tmRiseTime DESC

PostgreSQL 示例:

SELECT

/* 事件标识 */

"e"."nId",

 

/* 事件发生的时间 */

"e"."tmRiseTime",

 

/* 事件类型的内部名称 */

"e"."strEventType",

 

/* 事件的显示名称*/

"e"."wstrEventTypeDisplayName",

 

/* 事件的显示描述 */

"e"."wstrDescription",

 

/* 事件的显示描述 */

"e"."wstrGroupName",

 

/* 发生事件的设备的显示名称 */

"h"."wstrDisplayName",

(

CAST((("h"."nIp" / 16777216 )& 255 ) AS VARCHAR(4)) || '.' ||

CAST((("h"."nIp" / 65536 )& 255 ) AS VARCHAR(4)) || '.' ||

CAST((("h"."nIp" / 256 )& 255 ) AS VARCHAR(4)) || '.' ||

/* 发生事件的设备的 IP 地址 */

CAST((("h"."nIp" )& 255 ) AS VARCHAR(4))

) AS "strIp"

FROM "v_akpub_ev_event" AS "e"

INNER JOIN "v_akpub_host" AS "h" ON "h"."nId" = "e"."nHostId"

WHERE "e"."tmRiseTime" >= NOW() AT TIME ZONE 'utc' + make_interval(days => CAST(-7 AS INT))

ORDER BY "e"."tmRiseTime" DESC ;

MySQL 或 MariaDB 示例:

SELECT

/* 事件标识 */

`e`.`nId`,

 

/* 事件发生的时间 */

`e`.`tmRiseTime`,

 

/* 事件类型的内部名称 */

`e`.`strEventType`,

 

/* 事件的显示名称 */

`e`.`wstrEventTypeDisplayName`,

 

/* 事件的显示描述 */

`e`.`wstrDescription`,

 

/* 设备组名称 */

`e`.`wstrGroupName`,

 

/* 发生事件的设备的显示名称 */

`h`.`wstrDisplayName`,

CONCAT(

LEFT(CAST(((`h`.`nIp` DIV 1677721) & 255) AS CHAR), 4), '.',

LEFT(CAST(((`h`.`nIp` DIV 65536) & 255) AS CHAR), 4), '.',

LEFT(CAST(((`h`.`nIp` DIV 256) & 255) AS CHAR), 4), '.',

/* 发生事件的设备的 IP 地址 */

LEFT(CAST(((`h`.`nIp`) & 255) AS CHAR), 4)

) AS `strIp`

FROM `v_akpub_ev_event` AS `e`

INNER JOIN `v_akpub_host` AS `h` ON `h`.`nId` = `e`.`nHostId`

WHERE `e`.`tmRiseTime` >= ADDDATE( UTC_TIMESTAMP( ) , INTERVAL -7 DAY)

ORDER BY `e`.`tmRiseTime` DESC ;

另请参阅:

配置导出事件到 SIEM 系统

页顶