Changed the code, it worked :)
/* System databases don't have query store enabled */ INSERT @databases (databaseName) SELECT [name] FROM sys.databases AS d OUTER APPLY (SELECT CASE WHEN db.state = 0 AND (hars.role = 1 OR hars.role IS NULL) THEN 'Primary' ELSE 'Secondary' END AS [AVG_State] FROM sys.databases db LEFT JOIN sys.dm_hadr_availability_replica_states hars ON db.replica_id = hars.replica_id WHERE db.database_id = d.database_id ) AgPrimary WHERE d.state_desc = 'ONLINE' AND d.user_access = 0 AND d.name NOT IN ('master', 'model', 'msdb', 'tempdb') AND d.is_query_store_on = 1 AND AgPrimary.AVG_State = 'Primary'