Ajuda com Hibernate Criteria: Como criar uma coluna de um subselect?

Olá pessoal, estou precisando de uma ajuda para elaborar uma criteria do seguinte SQL:

select a.*, (select count(b.*) from tabelaB b where a.id = b.tabelaA) as conta from tabelaA a

É possível criar isso no Hibernate?

Obrigado.

O que preciso realmente é saber se na TabelaB existem elementos da TabelaA, por exemplo, vamos trocar a TabelaA por Email e a TabelaB por Anexo. O que eu preciso é saber na hora de listar os emails é quais possuem anexos e quais não possuem.

Este select resolve meu problema, mas não consigo fazê-lo no Hibernate:

select e.*, (select count(a.*) from Anexo a where e.id = a.email) as qtde_anexo from Email e

Eu até consegui listar os emails que possuem anexo, assim:

public List<Email> buscaEmail() {				
		Criteria criteria = this.session.createCriteria(Email.class, "e");
		criteria.add(Subqueries.exists(
				DetachedCriteria.forClass(Anexo.class, "a")
					.setProjection(Projections.id())
					.add(Restrictions.eqProperty("a.email", "e.id"))				
		));
		 
		return criteria.list(); 
	}

Mas o que precisava é colocar o resultado da Subquery em um campo Transient do Email, pois eu preciso listar todos os emails e apenas diferenciar quais possuem anexos e quais não possuem.

Será que alguém poderia me dar uma luz?
Obrigado.

[quote=felipebbarbosa]Olá pessoal, estou precisando de uma ajuda para elaborar uma criteria do seguinte SQL:

select a.*, (select count(b.*) from tabelaB b where a.id = b.tabelaA) as conta from tabelaA a

É possível criar isso no Hibernate?

Obrigado.[/quote]

Cara essa SQL esta certa ???

acho que isso esta errado, ao fazer select count(b.*) ele retorna apenas um dado não o nome de um campo…

Você tem razão, o correto é usar Count() ao invés de Count(b.).
Mas como eu faço isso no Hibernate?