2016-07-18 13 views
-1

私は1998年7月から1999年12月の期間に雇用された従業員のリストを取得するSELECTステートメントを書くという質問があります。リストには、従業員の氏名と名字と月給が含まれていなければなりません。表には年間給与が含まれており、従業員には年間給与が12件あります。Query-SQL Developer

私はこれを書いたが、動作しません:

SELECT FIRST_NAME, LAST_NAME, EMPLOYEE_ID, SALARY/12 as MONTHLY_SALARY 
FROM HR.EMPLOYEES 
WHERE HIRE_DATE BETWEEN JULY-1998 AND DECEMBER-1999 ; 
+1

MysqlまたはSqlServer? – scaisEdge

+0

何が問題なのですか?あなたはどんな結果を得ますか? /と給料との間にスペースを入れることはできますか? – StevenWalker

+0

@scaisEdge SqlServer –

答えて

0

あなたは(MySQLの)間違った日付形式を持っていることでしたSQLServerの

SELECT FIRST_NAME, LAST_NAME, EMPLOYEE_ID, SALARY/12 as MONTHLY_SALARY 
FROM HR.EMPLOYEES 
WHERE HIRE_DATE BETWEEN Cast('07-01-1998'as datetime) 
     AND Cast('12-31-1999' as datetime) ; 

そして用については

SELECT FIRST_NAME, LAST_NAME, EMPLOYEE_ID, SALARY/12 as MONTHLY_SALARY 
FROM HR.EMPLOYEES 
WHERE HIRE_DATE BETWEEN STR_TO_DATE('07-01-1998, '%m-%d-%Y) 
     AND STR_TO_DATE('12-31-1999, '%m-%d-%Y) D ; 

オラクル

SELECT FIRST_NAME, LAST_NAME, EMPLOYEE_ID, SALARY/12 as MONTHLY_SALARY 
FROM HR.EMPLOYEES 
WHERE HIRE_DATE BETWEEN TO_DATE('07-01-1998' , 'MM-DD-YYYY') 
     AND TO_DATE('12-31-1999' , 'MM-DD-YYYY') ; 
+0

@JoelCoehoornが今見ています.. – scaisEdge

+0

フィードバックのありがとうございます –