To use simulated statistics, you must issue the set statistics simulate on command before running the query.
For more information, see “Running queries with simulated statistics”.
To accurately simulate queries:
Use the same locking scheme and partitioning for tables
Re-create any triggers that exist on the tables and use the same referential integrity constraints
Set any non default cache strategies and any non default concurrency optimization values
Bind databases and objects to the caches used in the environment you are simulating
Include any set options that affect query optimization (such as set parallel_degree) in the batch you are testing
Create any view used in the query
Use cursors, if they are used for the query
Use a stored procedure, if you are simulating a procedure execution
Simulated statistics can be loaded into the original database, or into a database created solely for performing “what-if” analysis on queries.