Oracle 时间转换,在脚本中执行sql语句

本文介绍了如何使用Oracle SQL将日期字段转换为特定的字符串格式,包括直接查询展示和通过shell脚本执行SQL的方法。示例展示了如何从DBA_USERS表中获取用户名、账户状态及过期日期,并将其过期日期转换为'yy-mm-dd'和'yyyy-mm-dd'格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

例1:字符串时间转换成字符串

SQL> select username,account_status,expiry_date from dba_users;

USERNAME                       ACCOUNT_STATUS                   EXPIRY_DATE
------------------------------ -------------------------------- ------------
MGMT_VIEW                      OPEN                             18-SEP-14
SYS                            OPEN                             17-SEP-14
SYSTEM                         OPEN                             21-JUN-15
DBSNMP                         OPEN                             17-SEP-14
SYSMAN                         OPEN                             18-SEP-14

SQL> select username,account_status,to_char(expiry_date,'yy-mm-dd') from dba_users;

USERNAME                       ACCOUNT_STATUS                   TO_CHAR(
------------------------------ -------------------------------- --------
MGMT_VIEW                      OPEN                             14-09-18
SYS                            OPEN                             14-09-17
SYSTEM                         OPEN                             15-06-21
DBSNMP                         OPEN                             14-09-17
SYSMAN                         OPEN                             14-09-18

例2:在脚本中执行sql语句


#!/bin/sh
# author: shenxiaoran

prog_home=/zlrt/oracle
log="/tmp/oracle_user_expiry.log"
mail=$prog_home/mail_telnet.sh

#su - oracle -c "echo $ORACLE_SID"
#select username,account_status,expiry_date from dba_users;

su - oracle -c "sqlplus / as sysdba" << EOF | awk '/USERNAME/,/rows selected/ {print}> $log
select username,to_char(expiry_date,'yyyy-mm-dd') from dba_users;
exit;
EOF

$mail "Oracle User expiry_date list" "$log"




转载于:https://my.oschina.net/lionel45/blog/424263

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值