Community wiki answer:
There is no "default order". You will only get a specific sort order if you use order by
.
If there is no order by
, the database is free to return the rows in any order it thinks is most efficient.
See, for example, No Seatbelt – Expecting Order without ORDER BY
by Conor Cunningham (Software Architect, SQL Server Engine at Microsoft).
I find that the results always come in the same order.
You may observe this, but it is not guaranteed. The behaviour you observe may change at any time, even between executions of the same query on the same database, a few milliseconds apart.
I presume that the results will be returned in the order the rows were added.
No, this is not a safe presumption. Again, you may observe it in a certain test (you don't provide such a test, so it is hard to know what you're referring to exactly). It may happen, for example with a small number of rows inserted into a row store heap, but this is purely an implementation detail, which you cannot rely on remaining constant.
I have not tried with very large tables, but it certainly appears to be the case for the tables I have worked with.
Ok. You may well see different results with larger tables (or different storage engines, or different server configuration settings, or ...)
The point is that SQL Server appears to prefer the allocation order, and I wondered whether that's true.
Nope. Scanning pages in allocation order is one option available to the execution engines, but it is not 'preferred' in any active or design sense. Certainly it may make sense for the engine to traverse a b-tree index in sequence, but this guarantees nothing about the presentation order. There is an example of this in one of the answers to one of your previous questions.
I just want to know whether they are normally returned in allocation order …
If by "allocation order" you mean the order in which rows were inserted, yes this may be common, for very simple queries on very simple tables than have never seen anything except inserts.
If by "allocation order" you mean page ID order (the normal sense of the phrase for SQL Server) then no: non-allocation-order scans are the more common type. But again, all these observations are variables depending on the test conditions, and some of these concepts only exist for the row-mode engine.