Поиск с использованием mySql вместе с PHP - PullRequest
0 голосов
/ 26 октября 2009

Я занят разработкой приложения, в котором пользователи могут выполнять поиск по нескольким таблицам, теперь я не уверен, правильно ли я это делаю.

Мой пример кода выглядит следующим образом

        SELECT
            s.name,
            s.surname,
            s.id_nr,
            s.student_nr,
            s.createdate,
            s.enddate
        FROM
            Student AS s,
            Student_Results AS sr
        WHERE
            sr.innovation = "A"
        AND
            s.name = "Test"

Это правильный путь, как я делаю выше, или мне лучше использовать левые соединения и т. Д.?

1 Ответ

3 голосов
/ 26 октября 2009

По крайней мере, вам нужно что-то, связывающее две таблицы вместе - сейчас вы в основном выберете каждого учащегося для каждой оценки «А», потому что нигде в вашем предложении WHERE вы не указываете, что оценка и ученик должны соответствовать друг другу.

Вместо этого вам нужно что-то вроде этого (не знаю, какими будут ваши связанные поля идентификаторов, но вы поняли ...):

SELECT
    s.name,
    s.surname,
    s.id_nr,
    s.student_nr,
    s.createdate,
    s.enddate
FROM
    Student AS s,
    Student_Results AS sr
WHERE
    sr.innovation = "A"
AND
    s.name = "Test"
AND
    s.id_nr = sr.student_nr
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...