Không có lệnh PIVOT trong MySQL, nhưng có các cách giải quyết - Khái niệm cơ bản về bảng tổng hợp:các hàng để cột ... , Bảng tổng hợp MySQL (chuyển đổi hàng thành cột) .
Đối với trường hợp của bạn, bạn có thể sử dụng một cái gì đó như thế này -
SELECT AppNo,
MAX(IF(code = 1, Location, NULL)) Location,
MAX(IF(code = 1, Department, NULL)) Department,
1 Code1,
MAX(IF(code = 2, Location, NULL)) Location,
MAX(IF(code = 2, Department, NULL)) Department,
2 Code2,
MAX(IF(code = 3, Location, NULL)) Location,
MAX(IF(code = 3, Department, NULL)) Department,
3 Code3,
MAX(IF(code = 4, Location, NULL)) Location,
MAX(IF(code = 4, Department, NULL)) Department,
4 Code4,
MAX(IF(code = 5, Location, NULL)) Location,
MAX(IF(code = 5, Department, NULL)) Department,
5 Code5
FROM <table name>
GROUP BY AppNo
P.S. Bạn có thể chạy truy vấn này từ quy trình được lưu trữ.