次の SQL ステートメントを使用して、いくつかの列を射影します。
SELECT DISTINCT ON ("TrainingMatrix".payroll, "TrainingName", "Institute")"gendata"."Employee Name","gendata"."Position", "gendata"."Department", "TrainingMatrix".* "
"FROM "TrainingMatrix" "
"JOIN "gendata" ON "TrainingMatrix".payroll = "gendata".payroll "
"ORDER BY payroll, "TrainingName", "Institute" ,"TrainingDate" DESC NULLS LAST
値に基づいて結果をフィルタリングしたいと思い"TrainingMatrix".payroll
ます。次のことを試しましたが、エラーが表示されます。
SELECT * (SELECT DISTINCT ON ("TrainingMatrix".payroll, "TrainingName", "Institute")"gendata"."Employee Name","gendata"."Position", "gendata"."Department", "TrainingMatrix".* "
"FROM "TrainingMatrix" "
"JOIN "gendata" ON "TrainingMatrix".payroll = "gendata".payroll "
"ORDER BY payroll, "TrainingName", "Institute" ,"TrainingDate" DESC NULLS LAST) WEHRE "TrainingMatrix".payroll='40612010' ;"
このエラーが発生しました:
ERROR: 42601: syntax error at or near "("
私はPostgreSQLを使用しています。
編集:
SELECT * from (SELECT DISTINCT ON ("TrainingMatrix".payroll, "TrainingName", "Institute")"gendata"."Employee Name","gendata"."Position", "gendata"."Department", "TrainingMatrix".*
FROM "TrainingMatrix"
JOIN "gendata" ON "TrainingMatrix".payroll = "gendata".payroll
ORDER BY payroll, "TrainingName", "Institute" ,"TrainingDate" DESC NULLS LAST) where "TrainingMatrix".payroll='40612010' ;
今私は得た:
エラー: FROM のサブクエリにはエイリアスが必要です LINE 1: SELECT * from (SELECT DISTINCT ON ("TrainingMatrix".payroll...