Декартово съединение свързва всеки запис в първата таблица с всеки запис във втората таблица, така че тъй като вашата таблица има 7 реда и е свързана със себе си, тя трябва да върне 49 записа, ако не сте имали where
клауза. Вашата клауза where позволява само записи където a
Балансът на е по-малък от b
баланс. От 900
е, както казахте, максималният баланс в таблицата, той никога няма да бъде по-малък от всеки друг баланс и следователно никога няма да бъде върнат.
По отношение на първите пет реда нормалните правила на SQL се прилагат и за обединения. Тъй като SQL таблиците нямат вътрешен ред, изцяло зависи от базата данни да реши как да ги върне, освен ако изрично не посочите ред в order by
клауза. Стойностите, които изброихте, са напълно валидни стойности, които бихте очаквали да върне заявката.