I think you could do it with Dyanmic SQL, for example, you could use
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
and add some conditions to find all your table names, column names.
then use dynamic sql as a loop to go tables one by one.
DROP TABLE IF EXISTS #temp
CREATE TABLE #temp ---identity column will be used to iterate
(
id INT IDENTITY,
TableName VARCHAR(20),
ColumnName VARCHAR(20)
)
INSERT INTO #temp
SELECT TABLE_NAME,COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
-- choose your own results with where conditions
DECLARE @SQL VARCHAR(MAX)
DECLARE @Count INT = 1
DECLARE @Table VARCHAR(20)
DECLARE @Column VARCHAR(20)
WHILE @COUNT <= (SELECT COUNT(*) FROM #temp)
BEGIN
SELECT @table = TABLENAME FROM #temp WHERE id = @Count
SELECT @Column = COLUMNNAME FROM #temp WHERE id = @Count
SELECT @sql = 'SELECT TOP 10 '+@column +' FROM '+ @table
PRINT @SQL
SET @Count = @Count + 1
END