#mysql #sql
#mysql #sql
Вопрос:
МОЯ таблица похожа на приведенную ниже. Моя цель — получить общее количество баллов каждого человека (ГДЕ username = ‘Bobby’ ИЛИ username = ‘George’) и вернуть результат в столбцах, а не в строках. (Примечание: у меня в таблице более двух имен пользователей, и каждое из них содержит определенные точки, в этом случае я пытаюсь получить конкретные общие баллы на основе двух указанных людей).
id | username | points
1 Bobby 1
2 George 3
3 Bobby 2
4 Bobby 2
5 George 1
Желаемые Результаты:
column_1(Bobby) | column_2 (George)
5 4
Комментарии:
1. А что вы уже пробовали?
2. Вот руководство по транспонированию вашей таблицы. oracletuts.net/sql /…
Ответ №1:
Я думаю, что вместо того, чтобы получать его в результате sql, вы могли бы сначала получить свои строки и привязаться к некоторому datagridview, затем иметь другой datagridview, в который вы добавляете строки в виде столбца, а первый datagridview скрыт в форме…Я предполагаю, что вы пытаетесь отобразить форму…Мне очень жаль, если я ничем не смог вам помочь..
Ответ №2:
Используйте сводную таблицу для решения вышеуказанной проблемы.
Попробуй:
select sum(case when name = "Bobby" then point end) as Bobby,
sum(case when name = "George" then point end) as George from tablename;