#sql #concat
#sql #конкатенация
Вопрос:
На моей веб-странице отображается диаграмма Google, которая отображает данные из моей базы данных sql.
Вот запрос, который я использую: «ВЫБЕРИТЕ students.firstname в качестве Student, подсчитайте (посещаемость) как посещаемость ИЗ посещаемости, students где students.StudentNumber= attendance.StudentID И students.ClassGroup КАК ‘ITM4B%’ ГРУППИРУЮТСЯ ПО посещаемости.StudentID»
Вот как выглядит диаграмма:
что я хочу изменить, так это то, что я хочу добавить фамилию к имени, но когда я использую concat, диаграмма, похоже, не отображается.
Это утверждение, которое я использовал с concat: ВЫБЕРИТЕ concat_ws(‘ ‘, firstname, lastname) в качестве Student, подсчитайте (посещаемость) как посещаемость ИЗ посещаемости, students, где students.StudentNumber= attendance.StudentID И students.ClassGroup КАК ‘ITM4B%’ ГРУППИРУЮТ ПО studentId
Кто-нибудь, пожалуйста, помогите??
Ответ №1:
Интересно, сработало бы это, если бы вы правильно написали запрос:
select concat_ws(' ', s.firstname, s.lastname) as Student,
count(a.attended) as Attended
from attendance a join
students s
on s.studentNumber = a.studentId
where s.classGroup like 'ITM4B%'
group by concat_ws(' ', s.firstname, s.lastname);
Это использует правильный JOIN
синтаксис и исправляет GROUP BY
, чтобы он соответствовал SELECT
столбцам (это может иметь значение).
Однако я предполагаю, что реальной проблемой может быть длина результирующих имен, которая влияет на построение графиков.