The term "result set" [sic] does not appear in the 1992 SQL standard. It's typically used to mean the result of a select statement. Which is a partially ordered sequence of rows from a table:
< direct select statement: multiple rows >
5) If an < order by clause > is specified, then the ordering of rows of the result is effectively determined by the < order by clause > as follows:
From the 2003 SQL standard:
220.127.116.11 result set: A sequence of rows specified by a < cursor specification >, brought into existence by opening a cursor and ranged over by that cursor, and having operational properties of sensitivity, scrollability, holdability, and returnability.
18.104.22.168 returned result set: A result set created during execution of an SQL-invoked procedure and not destroyed when that execution terminates. Such a result set can be accessed by using a cursor other than the one that brought it into existence (a received cursor).
< cursor specification > ::= < query expression > [ < order by clause > ] [ < updatability clause > ]
Specify a statement to retrieve multiple rows from a specified table.
< direct select statement: multiple rows > ::= < cursor specification >
2) The < cursor specification > shall not contain an < updatability clause >.
1) Let Q be the result of the < cursor specification >.
a) If Q is empty, then a completion condition is raised: no data.
b) Otherwise, Q is not empty and Q is returned. The method of returning Q is implementation-defined.
(Clearly the result of a SELECT statement is ordered because that is what its ORDER BY does.)
Tables are unordered. But a result set [sic] is not a table.