postgresql 练习题(三)

本文介绍了如何使用SQL查询特定区域的员工信息,包括部门、姓名、岗位和薪资,并按国籍和薪资排序。同时,展示了查找姓名以's'结尾的员工总数的多种方法。此外,还提供了将特定部门员工数据导入新表的脚本,以及查询HR部门约束和索引的SQL语句。
摘要由CSDN通过智能技术生成

  1. 显示所有在欧洲区域工作的员工,显示他们的部门,姓名,岗位,薪资,国籍,结果按照国籍升序,薪资降序排列
    select department_name, last_name, job_id, salary, country_name,region_id
    from employees e, departments d, locations l, countries co
    where e.department_id = d.department_id
    and l.country_id = co.country_id
    --Germany和UK属于欧洲,region_id=1
    and co.region_id = '1'
    order by country_name ASC, salary desc;

  2. 用尽可能多的方式显示姓名以小写’s’结尾的人员总数;
    --方法一:
    
    select count(*) from employees where last_name like '%s';
    
    --方法二:
    
    select count(*) from employees
    where substr (reverse(last_name),1,1)='s';
    
    --方法三:
    
    select count(*) from employees
    where last_name ~'s$';

  3. 查询所有薪资大于‘IT_PROG’部门任何一人的薪资员工信息,显示姓名、薪资、岗位;用2种方法实现。
    --方法一:
    
    select last_name,salary,job_id
    from employees
    where salary > (select min(salary)from employees where job_id='IT_PROG')
    order by salary;
    
    --方法二:
    
    select last_name,salary,job_id
    from employees
    where salary > any(select salary from employees where job_id='IT_PROG')
    order by salary;

  4. 创建一张表与employees表相同的表,表名:employees_工号;将’Marketing’,’IT’ 两个部门下员工导入该表。提供脚本。
    create table employees_工号 as select * from employees where 1=2;
    
    
    insert into employees_工号 (select * from employees
    where job_id like 'IT%' or job_id like 'MK%');

  5. 查询HR下所有的约束/索引。
    select * from pg_indexes where schemaname='public'

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PostgreSQL中进行查询练习时,可以使用SELECT语句来检索数据。例如,要检索名为COMPANY的表中的所有数据,可以使用以下查询语句: SELECT * FROM COMPANY; 这将返回COMPANY表中的所有行和列的数据。 如果要根据特定条件进行筛选,可以使用WHERE子句。例如,要检索年龄大于30岁的员工,可以使用以下查询语句: SELECT * FROM COMPANY WHERE AGE > 30; 还可以使用ORDER BY子句对结果进行排序。例如,要按工资从高到低的顺序检索员工数据,可以使用以下查询语句: SELECT * FROM COMPANY ORDER BY SALARY DESC; 此外,还可以使用LIMIT子句限制返回的行数。例如,要检索前5个员工的数据,可以使用以下查询语句: SELECT * FROM COMPANY LIMIT 5; 这些是一些基本的查询练习示例,你可以根据需要进行进一步的练习和探索。 #### 引用[.reference_title] - *1* *2* [通俗易懂的学会SQL,30道练习题PostgreSQL基础版)](https://blog.csdn.net/weixin_41645135/article/details/124396005)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【postgreSQL 练习】](https://blog.csdn.net/weixin_43496777/article/details/125883953)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值