資料庫SQL實踐16:統計出當前各個title型別對應的員工當前薪水對應的平均工資
思想:
題目要求統計出當前各個title型別對應的員工當前薪水對應的平均工資。結果給出title以及平均工資avg。首先通過條件t.to_date='9999-01-01'找出當前title型別的員工,其次通過條件s.to_date='9999-01-01'找出員工當前薪水,最後通過條件group by t.title實現以title進行分組便於求平均值。
select t.title,avg(s.salary) from titles t,salaries s where t.emp_no = s.emp_no and s.to_date='9999-01-01' and t.to_date='9999-01-01' group by t.title;
相關推薦
資料庫SQL實踐16:統計出當前各個title型別對應的員工當前薪水對應的平均工資
思想: 題目要求統計出當前各個title型別對應的員工當前薪水對應的平均工資。結果給出title以及平均工資avg。首先通過條件t.to_date='9999-01-01'找出當前title型別的員工,其次通過條件s.to_date='9999-01-01'找出員工當前薪水,最後通過條件grou
資料庫SQL實踐8:找出所有員工當前薪水salary情況
思想: 題目要求找出所有員工當前薪水salary情況,對於相同的薪水只顯示一次,並按照逆序顯示。首先根據當前薪水的要求通過條件to_date = '9999-01-01'來達到目的,然後根據相同的薪水只顯示一次的要求通過條件distinct salary來達到目的,最後通過order by sa
資料庫SQL實踐22:統計各個部門對應員工漲幅的次數總和
思想: 題目要求統計各個部門對應員工漲幅的次數總和,給出部門編碼dept_no、部門名稱dept_name以及次數sum。 首先通過條件departments as d inner join dept_emp as e on d.dept_no = e.dept_no將depart
資料庫SQL實踐27:給出每個員工每年薪水漲幅超過5000的員工編號emp_no
思想: 題目要求給出每個員工每年薪水漲幅超過5000的員工編號emp_no、薪水變更開始日期from_date以及薪水漲幅值salary_growth,並按照salary_growth逆序排列。 提示:在sqlite中獲取datetime時間對應的年份函式為strftime('%Y', to
資料庫SQL實踐60:統計salary的累計和running_total
思路: 觀察可知running_total是小於或等於當前emp_no工資的總和。 select s.emp_no,s.salary, (select sum(ns.salary) from salaries ns where ns.emp_no <=s.emp_no and ns.t
資料庫SQL實踐21:統計各個部門對應員工漲幅的次數總和
思想: 題目要求統計各個部門對應員工漲幅的次數總和,給出部門編碼dept_no、部門名稱dept_name以及次數sum。 首先通過條件departments as d inner join dept_emp as e on d.dept_no = e.dept_no將d
資料庫SQL實戰 --14.統計出當前各個title型別對應的員工當前薪水對應的平均工資
題目描述 統計出當前各個title型別對應的員工當前薪水對應的平均工資。結果給出title以及平均工資avg。 CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_
資料庫SQL實踐11:獲取所有員工當前的manager
思想: 題目要求獲取所有員工當前的manager,如果當前的manager是自己的話結果不顯示,當前表示to_date='9999-01-01'。 結果第一列給出當前員工的emp_no,第二列給出其manager對應的manager_no。首先通過條件e.dept_no = m.dept_no找
資料庫SQL實踐9:獲取所有部門當前manager的當前薪水情況
思想: 題目要求獲取所有部門當前manager的當前薪水情況,給出dept_no, emp_no以及salary,當前表示to_date='9999-01-01'。首先通過條件d.to_date = '9999-01-01'來找出部門當前manager,然後通過條件s.to_date = '99
資料庫SQL實踐18:獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary,不準使用order by
思想: 題目要求查詢當前薪水(to_date='9999-01-01')排名第二多的員工編號emp_no、薪水salary、last_name以及first_name,不準使用order by。首先通過條件e.emp_no=s.emp_no將兩表內連線相連,然後通過條件to_date='9999
資料庫SQL實踐17:獲取當前薪水第二多的員工的emp_no以及其對應的薪水salary
思想: 題目要求獲取當前(to_date='9999-01-01')薪水第二多的員工的emp_no以及其對應的薪水salary。首先通過條件to_date = '9999-01-01'獲取當前薪水,其次通過條件order by salary desc limit 1,1找到薪水第二多的員工(前提
資料庫SQL實踐25:獲取員工其當前的薪水比其manager當前薪水還高的相關資訊
思想: 題目要求獲取員工其當前的薪水比其manager當前薪水還高的相關資訊,當前表示to_date='9999-01-01', 結果第一列給出員工的emp_no, 第二列給出其manager的manager_no, 第三列給出該員工當前的薪水emp_salary, 第四列給該員工對應的mana
資料庫SQL實踐24:獲取所有非manager員工當前的薪水情況
思想: 題目要求獲取所有非manager員工當前的薪水情況,給出dept_no、emp_no以及salary ,當前表示to_date='9999-01-01'。 首先通過條件d.to_date = '9999-01-01'將員工所在當前部門找出。 其次通過條件s.to_date = '
資料庫SQL實戰 —— 統計出當前各個title型別對應的員工當前薪水對應的平均工資。結果給出title以及平均工資avg。
時間限制:1秒 空間限制:32768K 題目描述 統計出當前各個title型別對應的員工當前薪水對應的平均工資。結果給出title以及平均工資avg。 CREATE TABLE `salaries
資料庫SQL實踐61:對於employees表中,給出奇數行的first_name
思路: 將小於等於e1.first_name的first_name的個數統計下,然後求餘2看是否等於1,若是則取出。 select e1.first_name from employees e1 where(select count(*) from employees e2 where e1
《資料庫SQL實戰》統計出當前各個title型別對應的員工當前薪水對應的平均工資。
題目描述 統計出當前各個title型別對應的員工當前薪水對應的平均工資。結果給出title以及平均工資avg。 CREATE TABLE salaries ( emp_no int(11) NOT
資料庫SQL實踐10:獲取所有非manager的員工emp_no
思想: 題目要求獲取所有非manager的員工emp_no。首先通過子查詢找到部門經理的emp_no,然後通過條件where emp_no not in找出非manager的emp_no。 select emp_no from employees where emp_no not in (s
資料庫SQL實踐7:查詢薪水漲幅超過15次的員工號emp_no以及其對應的漲幅次數t
思想: 題目要求查詢薪水漲幅超過15次的員工號emp_no以及其對應的漲幅次數t。首先通過group by函式對emp_no進行分組,將同一個emp_no的記錄分為一組並通過count(*)計算這個emp_no組中一共有幾條記錄,最後通過having函式找出記錄數大於15的。 知識點:
資料庫SQL實踐6:查詢所有員工入職時候的薪水情況
思想: 題目查詢所有員工入職時候的薪水情況,給出emp_no以及salary, 並按照emp_no進行逆序。首先根據所有員工入職時候的薪水要求通過條件e.hire_date = s.from_date來找到剛入職時候的薪水,然後根據按照emp_no進行逆序要求通過order by e.emp_n
資料庫SQL實踐2:查詢入職員工時間排名倒數第三的員工所有資訊
思想: 題目要求查詢入職員工時間排名倒數第三的員工所有資訊。首先通過一個子查詢(select distinct hire_date from employees order by hire_date desc limit 2,1)查找出入職員工時間排名倒數第三的入職時間hire_dat