DECLARE @TabNome VARCHAR(256)
DECLARE @ColNome VARCHAR(256)
DECLARE @Resultado TABLE(TabNome VARCHAR(MAX), ColNome VARCHAR(MAX))
DECLARE Colunas CURSOR FOR
--Busca todas as colunas de todas as tabelas

SELECT COL.Name, TAB.Name
FROM Alphaind.SYS.Columns COL
  INNER JOIN Alphaind.SYS.Tables TAB ON TAB.Object_Id = COL.Object_Id
  INNER JOIN Alphaind.SYS.Types TYP ON COL.System_Type_Id = TYP.System_Type_Id
  WHERE TYP.Name in (
	'bigint',
	'bit',
	'char',
	'date',
	'datetime',
	'datetime2',
	'decimal',
	'float',
	'image',
	'int',
	'money',
	'ntext',
	'numeric',
	'nvarchar',
	'smalldatetime',
	'smallint',
	'sysname',
	'text',
	'tinyint',
	'uniqueidentifier',
	'varchar'
  ) 
	/*-–filtra o tipo de dado que você procura para  --evitar a procura de uma string em um inteiro*/
	
ORDER BY TAB.Name
OPEN Colunas

FETCH NEXT FROM Colunas INTO @ColNome, @TabNome

WHILE @@FETCH_STATUS = 0
BEGIN

    EXEC('Select * From [Alphaind].[dbo].[' + @TabNome + '] Where ' + @ColNome + ' Like ''%PILOTO M%''') /*–- caso encontre, salva a tabela e a coluna*/

    IF @@RowCount > 0 /*–- caso encontre, salva a tabela e a coluna*/
    BEGIN
       INSERT INTO @Resultado VALUES(@TabNome,@ColNome)
    END

     FETCH NEXT FROM Colunas INTO @ColNome, @TabNome
END

CLOSE Colunas
DEALLOCATE Colunas

SELECT * FROM @Resultado /*–- lista todas as tabelas e suas colunas que*/