SQL函数

SQL函数

单行函数

-- 写一个查询显示当前日期,列标签显示为Date
select sysdate "Date" from dual;
/*对每一个雇员,显示employee number、last_name、salary和salary增加15%,
并且表示成整数,列标签显示为New Salary*/
select employee_id, last_name, salary, round(salary * (1.15)) "New Salary" from employees;
/*查询所有名字开始字母是J、A、或M的雇员,用首字母大写,其它字母小写显示雇员的last_name,
显示名字的长度,用雇员的last_name排序结果*/
select initcap(last_name), length(last_name) from employees where substr(last_name, 1, 1) in ('J', 'A', 'M') order by last_name;
/*对每一个雇员,显示其last_name,并且计算从雇员受雇日期到今天的月数,列标签MONTHS_WORKED。
按受雇的月数排序结果,四舍五入月数到最靠近的整数月。*/
select last_name, round(months_between(sysdate, hire_date)) MONTHS_WORKED from employees order by MONTHS_WORKED;
/*写一个查询对每一个雇员做计算:<雇员的last_name> earns <salary> monthly but wants <3倍salary>。
要求薪水中包含$与千位符。列标签Dream Salaries*/
select last_name || ' earns ' || to_char(salary, 'fm$999,999,999.99') || ' monthly but wants ' || to_char(salary * 3, 'fm$999,999,999.99') "Dream Salaries" from employees;
/*创建一个查询显示所有雇员的last_name和salary。对salary格式化为15个字符长度,用$左填充,列标签SALARY*/
select last_name, lpad(salary, 15, '$') SALARY from employees;
/*显示last_name、hire_date和雇员开始工作的周日列 标签DAY,用星期一作为周的起始日排序结果*/
select last_name, to_char(hire_date,  'yyyy"年"mm"月"dd"日" day'), next_day(hire_date, '星期日') DAY from employees order by to_char(hire_date-1, 'd');
/*创建一个查询显示雇员的last_name和commission(佣金)比率。
如果雇员没有佣金,显示”No Commission“,列标签COMM
*/
select last_name, nvl(to_char(commission_pct), 'No Commission') COMM from employees;

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值