У меня есть 4 таблицы.mysql запрос не заканчивается
person ... PersonID, LASTNAME, FIRSTNAME
users ... PersonID, IsApproved
membership ... MembershipID, LastActiveYear
Последняя таблица связывает их все вместе
mempershipperson ... MembershipID, PersonID
Мне нужно создать список, показывающий;
SELECT 'LASTNAME','FIRSTNAME','PersonID','MembershipID'
WHERE 'LastActiveYear' <= 2013 AND 'IsApproved" = 1
При запуске этого запроса ниже швы продолжаться вечно. У меня должно быть около 100 строк.
SELECT LastActiveyear, M.MembershipID, P.FIRSTNAME, P.LASTNAME, U.IsApproved FROM
членство M,
пользователи U,
человек P JOIN
membershipperson MP ON MP.PersonID = P.PersonID WHERE
LastActiveYear = 2012 AND
IsApproved = 1
Я очень новой для всего этого, так что может быть очень очевидно только то, что я делаю неправильно с вами. Я боролся с этим в течение нескольких недель. Таким образом, мои попытки вернули более 700 000 строк бесполезных данных.
В какой-то момент мне нужно создать страницу php, чтобы сбросить все эти ошибочные биты IsActive до «0».
Обратите внимание, что в таблицах есть много столбцов, я просто показываю соответствующие приложения для этого приложения.
Спасибо
Вы не указываете критерии для присоединения к Пользователям или Членству; поэтому база данных объединяет каждую строку с каждой другой строкой. – andrewsi
Сделайте соединение с пользователями и людьми, а не включите его в раздел FROM –
@andrewsi, это должен быть ответ. –