postgresql获取系统当前时间毫秒数的sql

PG数据库获取当前时间,并转换为毫秒数的sql:

select floor(extract(epoch from((current_timestamp - timestamp '1970-01-01 00:00:00')*1000)))

这个跟java里的System.currentTimeMillis()方法是一个意思,只不过有个区别:

java的System.currentTimeMillis()获取的时间是以伦敦时区(GMT中央时区)计算的,

而数据库获取的是北京时区(东8区),所以pg数据库获取的毫秒数会比java获取的毫秒数大8小时。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 MySQL 据库中,可以使用以下 SQL 语句获取当前正在执行的 SQL 语句及其开始时间: ``` SELECT info.command_type, info.state, info.time, stage.sql_text FROM information_schema.processlist AS info LEFT JOIN performance_schema.threads AS threads ON threads.processlist_id = info.id LEFT JOIN performance_schema.events_statements_current AS stage ON threads.thread_id = stage.thread_id WHERE info.command_type != 'Sleep'; ``` 这个 SQL 语句会返回一个结果集,其中包括当前正在执行的 SQL 语句的类型、状态、开始时间和完整的 SQL 语句文本。需要注意的是,需要有足够的权限才能查询这些信息。 ### 回答2: 要获取当前正在执行的SQL及其开始时间,可以通过查询据库的系统获取相关信息。 在MySQL中,可以使用`show processlist;`命令或查询`information_schema.PROCESSLIST`表来获取当前正在执行的SQL。 在Oracle中,可以使用以下方法之一来获取当前正在执行的SQL: 1. 查询`v$session`视图获取会话信息,并通过会话ID(SID)来查询`v$sql`视图获取SQL语句。 2. 使用`sys.dba_hist_active_sess_history`表来查看历史活动会话,并通过`sql_id`来匹配相应的SQL语句。 在SQL Server中,可以通过以下方法之一来获取当前正在执行的SQL: 1. 使用`sys.dm_exec_requests`动态管理视图获取当前执行的所有请求,其中包含SQL语句和开始时间等信息。 2. 使用`sys.dm_exec_sql_text`动态管理函传入对应的请求ID来获取具体的SQL语句。 一般来说,这些方法都会返回一个包含正在执行的SQL语句和开始时间的结果集。可以根据具体的据库系统和权限限制选择适合的方法来查询相关信息。 注:以上主要是针对关系型据库,不同的据库系统可能有不同的系统表和视图来获取相关信息。 ### 回答3: 要获取当前正在执行的SQL及其开始时间,可以使用以下方法: 1. 查看据库的活动会话或进程列表:通过查询据库系统视图或系统表,例如v$session (Oracle)、sys.sysprocesses (SQL Server)、pg_stat_activity (PostgreSQL)等,找到当前正在执行的会话或进程。 2. 查看会话的当前SQL语句:在找到当前正在执行的会话后,可以使用相应的SQL语句查询会话当前执行的SQL语句。例如,在Oracle中,可以使用v$sql或v$sqltext视图查询当前SQL语句;在SQL Server中,可以使用sys.dm_exec_requests或sys.dm_exec_sql_text函查询当前SQL语句;在PostgreSQL中,可以使用pg_stat_activity视图查询当前SQL语句。 3. 获取SQL开始时间:在找到正在执行的SQL语句后,可以通过会话的开始时间字段或系统监视视图中的相关字段获取SQL的开始时间。例如,在Oracle中,可以使用v$session视图中的START_TIME字段;在SQL Server中,可以使用sys.dm_exec_requests视图中的start_time字段;在PostgreSQL中,可以使用pg_stat_activity视图中的backend_start字段。 需要注意的是,不同的据库系统的查询语句和视图名称可能有所不同,具体要根据使用的据库系统来调整查询语句。另外,获取当前执行的SQL和开始时间可能需要相应的权限和访问权限。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值