資料庫SQL實戰

2021-08-04 19:50:29 字數 927 閱讀 6420

找出所有員工當前(to_date='9999-01-01')具體的薪水salary情況,對於相同的薪水只顯示一次,並按照逆序顯示

create table `salaries` (

`emp_no` int(11) not null,

`salary` int(11) not null,

`from_date` date not null,

`to_date` date not null,

primary key (`emp_no`,`from_date`));

salary

94692

94409

88958

88070

74057

72527

59755

43311

25828

select distinct salary

from salaries

where to_date = '9999-01-01'

order by salary desc

1、相同薪水顯示一次,則使用select distinct可去除重複值

2、要求逆序排列,則在最後應使用order by salary desc

也可這樣寫:

select salary

from salaries

where to_date = '9999-01-01'

group by salary

order by salary desc

大表一般用

distinct效率不高,大資料量的時候都禁止用

distinct,建議用group by解決重複問題。

資料庫SQL實戰

無emp no birth date first name last name gender hire date 10008 1958 02 19 saniya kalloufi m1994 09 15 示例1無 無 select from employeesorder byhire datedes...

資料庫SQL實戰

獲取當前 to date 9999 01 01 薪水第二多的員工的emp no以及其對應的薪水salary create table salaries emp no int 11 not null,salary int 11 not null,from date date not null,to d...

資料庫SQL實戰

查詢所有員工的last name和first name以及對應的dept name,也包括暫時沒有分配部門的員工 create table departments dept no char 4 not null,dept name varchar 40 not null,primary key de...