2つのテーブルを結合している次のSQLステートメント(SQLite 3.0)があります。その結果、1日のレコードがあり、その日の合計がありますが、言語テーブルに結合すると、1日あたり5つのレコードが得られます。各言語。
SELECT
re.day,
re.flashcardsAdded,
re.flashcardsTested,
re.flashcardsLearned,
re.totalPoints AS totalForDay,
la.language,
la.total AS totalForLanguage
FROM dpod_site_reportDays AS re
JOIN dpod_site_reportDayLanguageTotals AS la ON re.day=la.day
ORDER BY re.day DESC
ただし、1日に1つのレコードのみが必要であり、たとえば「フランス語」をデータにするのではなく、その言語の合計をその列のデータとする列名にします。
適切なフィールド名を持つ同じレコードの言語合計を取得するようにSQLステートメントを変更するにはどうすればよいですか?例えば:
day | flashcardsAdded | flashcardsTested | flashcardsLearned | totalForDay | french | german | italian | russian | german
表は次のとおりです。
CREATE TABLE dpod_site_reportDayLanguageTotals(
day VARCHAR(50),
language VARCHAR(1024),
total INT(12),
extras VARCHAR(1024),
idCode VARCHAR(1024),
whenCreated VARCHAR(50),
whenChanged VARCHAR(50),
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE)
CREATE TABLE dpod_site_reportDays(
day VARCHAR(50),
flashcardsAdded INT(12),
flashcardsTested INT(12),
flashcardsLearned INT(12),
journalPoints INT(12),
readingPoints INT(12),
correctionPoints INT(12),
extrasData TEXT,
totalPoints INT(12),
extras VARCHAR(1024),
idCode VARCHAR(1024),
whenCreated VARCHAR(50),
whenChanged VARCHAR(50),
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE)