Mostrar/exibir o SQL de uma Collection no Magento 2

As respostas acima estão corretas, mas algumas coleções apenas montam o select no método _beforeLoad(), ao invés de inicializá-lo no construtor. Isso significa que você obterá uma string vazia se tentar gerar a consulta SQL antes de carregar a coleção.

Um exemplo disso é \\Sales\Model\ResourceModel\Report\Bestsellers\Collection. Portanto, se você estiver obtendo resultados inesperados, carregue a coleção (isso criará a consulta de seleção final) e, em seguida, gere a consulta.
 
$collection->load();

// the following statements are equivalent
$collection->getSelect()->assemble();
$collection->getSelect()->__toString();
echo $collection->getSelect(); // will call magic method __toString() behind the scenes which in turn calls assemble()

Utilize a função __toString():

echo $collection->getSelect()->__toString();

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *