В втором запросе нет предложения WHERE, поэтому вы получаете все строки из таблицы member
.
Тогда вы внешнее_соединение таблицы daili
со следующим условием: когда member.membertype < = 4 и соответствующие записи счетов находятся в daili
затем присоединиться к этим, в противном случае просто держать member
записи с пустым daili
записи.
Итак, для элемента member> 4 вы всегда являетесь внешним - присоединяетесь к пустой записи daili
.
Удалить membertype <= 4
из вашего предложения ON, потому что вы не хотите, чтобы это условие соединения. Вместо этого поставьте в предложение WHERE, потому что вы хотите ограничить свой набор результатов.
LEFT join возвращает все строки для первой таблицы, его просто условие вернет NULL, если они не совпадают во второй таблице. – Mihai