Эта проблема может показаться школьной работой, но это не так. В лучшем случае это самостоятельная школьная работа. Я рекомендую, чтобы учителя учились в качестве примера, если они того пожелают.Задача запроса «первое после выборов»
«Первое после поста» выборы однократные, что означает, что тот, кто получает наибольшее количество голосов, не имеет вторых раундов.
Предположим, что таблица для выборов.
CREATE TABLE ElectionResults (
DistrictHnd INTEGER NOT NULL,
PartyHnd INTEGER NOT NULL,
CandidateName VARCHAR2(100) NOT NULL,
TotalVotes INTEGER NOT NULL,
PRIMARY KEY DistrictHnd, PartyHnd);
Стол имеет два внешних ключей: точки DistrictHnd в таблицу окружной (перечислено все различные избирательные округа), а также точки PartyHnd в таблицу партии (перечислено все различные политические партии). Я не буду беспокоиться о других таблицах здесь, присоединяясь к ним тривиально. Это всего лишь небольшая часть контекста.
Вопрос: Какой SQL-запрос вернет таблицу, в которой перечислены районы районаHnd, PartyHnd, CandidateName и TotalVotes победителей (максимальное количество голосов) в каждом округе?
Это не предполагает никакой конкретной системы баз данных. Если вы хотите придерживаться определенной реализации SQL, перейдите по пути SQLite и MySQL. Если вы можете разработать лучшую схему (или более легкую), это тоже приемлемо. Критерии: простота, переносимость в другие базы данных.
Hnd? Что случилось с идентификатором? –
Сила привычки. Как правило, я использую ID для любой формы распознаваемого целого числа, а Hnd для чего-то более внутреннего, что, вероятно, будет автоинкремент. – MPelletier