私はWebアプリケーションを開発しています。今では、このアプリケーションがデータベースからいくつかのレポートを生成できるようにする必要があります。私は非常に複雑な構造の巨大なデータベースを持っています。私は大規模なSQLクエリを考え出し、データベースの構造を少し変更するまではうまくいっていました。私はこれらの変更に応じて修正しましたが、まだ動作しません。 SQLServer Management Studioでテストしたところ、失敗しました。時にはエラーが構文であることがわかります。時にはそれは私に "'とのエラーを伝えます。このSQLクエリーで何が間違っていますか?
データベースのシンプルな構造:
employeeテーブル:名、ユーザー名、JobTitle、BadgeNo、EmpOrgType、DivisionID
Departmentsテーブル: DepartmentCode、DepartmentName
コーステーブル: CourseID、CourseName、GroupID
グループID、GroupNameの
employee_courses:グループテーブルは社員コード、courseID
各テーブルの最初の属性は、最後のテーブルを除く各テーブルの主キーであり、テーブルをemployee_courses。
クエリがある:名前、ユーザー名、JobTitle、BadgeNo、EmpOrgTypeとDivisionName:
select *
from
(SELECT TOP (100) PERCENT
dbo.Divisions.DivisionName,
dbo.employee.EmpOrgType,
dbo.employee.Name,
T1.Username,
courses_2.CourseName,
CASE WHEN dbo.employee_courses.courseId IS NULL THEN '' ''
ELSE ''Yes'' END AS CourseId
FROM dbo.employee_courses
RIGHT OUTER JOIN dbo.courses AS courses_2
INNER JOIN (SELECT employee_1.Username,
courses_1.CourseID
FROM dbo.employee AS employee_1
CROSS JOIN dbo.courses AS courses_1)
AS T1 ON courses_2.CourseID = T1.CourseID
INNER JOIN dbo.employee ON T1.Username = dbo.employee.Username
ON dbo.employee_courses.employeeId = T1.Username AND
dbo.employee_courses.courseId = T1.CourseID
ORDER BY T1.Username
) DataTable
このクエリは、従業員の情報を取得する必要があります。次に、講座のGroupNameに言及しながら講座のテーブルから講義を取り出した講座を表示する必要があります。
エラーメッセージは何ですか? –
@ user976711:このクエリは元のクエリの変更されたバージョンですか?もしそうなら、質問に元の質問を含めることができますか? –