You can use a lookup to pull all data simply by not including a Condition and checking the "as new rows" option for each column. A lookup with no conditions will return every value in the target table/view.
When there is no condition set, the lookup will still be triggered when the form is loaded because there is an initial "onloadlookup" process that runs when a form is opened.
In the following example, I have a lookup that is targeting a table named "test" but it has no conditions set so it will always return every row of that table.
It is worth noting that large data sets can take a significant amount of time to load. When a lookup returns data, it not only has to process all that data, but it also has to build out the HTML elements on the form, so the number of rows and columns will have a noticeable impact on performance of the web form.
For example, a table with 5 columns and 10 rows might load pretty quickly, but a table with 5 rows and 500 columns would take noticeably longer because it has to do a lot more work not just to transfer the data, but also to build the rows into the HTML of the form.