Те връщат едни и същи резултати, защото са семантично идентични. Това:
select *
from A, B
...е (трепне) синтаксис на ANSI-89. Без клауза WHERE за свързване на таблиците заедно, резултатът е декартов продукт. Което също предлага алтернативата:
select *
from A
cross join B
...но CROSS JOIN е синтаксис ANSI-92.
Относно производителността
Между тях няма разлика в производителността.
Защо да използвате ANSI-92?
Причината да се използва синтаксисът на ANSI-92 е за поддръжка на OUTER JOIN (IE:LEFT, FULL, DIGHT) - синтаксисът на ANSI-89 няма никакъв, толкова много бази данни са имплементирали свои собствени (което не се пренася към други бази данни ). IE:(+)
на Oracle , =*
на SQL Server