Jump to content
Bruno - BuhDesign

PHP + Mysql: Agrupar resultados iguais excluindo o final "diferente"

Recommended Posts

Bom dia pessoal.

Bom, estou trabalhando no banco de dados MySQL de um cliente, onde ele salva o curso da seguinte forma:

 

NOME DO CURSO || LONDRINA - PR
NOME DO CURSO || CURITIBA - PR

 

Eu preciso fazer uma contagem, por curso, independente da cidade. Ou seja, se eu fizer um GROUP BY ele não
vai juntar LONDRINA e CURITIBA. Como posso contornar esta divergência?  Teria uma forma de agrupar, até encontrar
o carácter || ou agrupar por "semelhantes"?

De fato, LONDRINA e CURITIBA possuem o mesmo curso e precisavam aparecer na mesma contagem. 

Muito obrigado desde já.

Share this post


Link to post
Share on other sites

Olá Gabriel.

Na verdade, é uma tabela somente.

O campo [curso] recebe o valor assim

1 Curso tal || SP

1 Curso tal || PR

1 Curso tal || SP

 

Se eu fizer um GROUP BY ele trás 

2 Curso tal || SP

1 Curso tal || PR

 

Quando na verdade eu precisava exatamente dos 3 pro "Curso tal". Não da pra fazer um COUNT porque tem outros cursos na mesma situação.

Share this post


Link to post
Share on other sites

Tenta assim:

SELECT (CASE WHEN coluna_curso LIKE 'curso1%' THEN 'curso1'
             WHEN coluna_curso LIKE 'curso2%' THEN 'curso2'
        END) as curso, COUNT(*)
FROM tabela_cursos
GROUP by (CASE WHEN coluna_curso LIKE 'curso1%' THEN 'curso1'
               WHEN coluna_curso LIKE 'curso2%' THEN 'curso2'
          END);

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Salvatore
      Galera alguem poderia me explicar como faço isto ultilizando php? estou perdido
      tenho que usar varias imagens?
       
      De acordo que ele clica e seleciona a poltrona ela muda de cor 
      RED: OCUPADA
      AZUL: LIVRE

    • By drx
      Olá feras!
       
      Estou recebendo este retorno da conexão: SQLSTATE[HY000] [1049] Base 'dbbase' inconnue
       
      O que é que pode ser?
       
      Tudo certinho. Fala que a dbbase não existe, mas existe.
      Alguém tem uma solução ?
       
      Desde já agradeço.
    • By helkton
      ola galera, dúvida besta, mais ja estou quebrando a cabeça,
      seguinte estou preso  num select <option> vindo do banco de dados
      fiz alguns com o if(){}
      mais é pra saber tipoImovel - interesseImovel ou finalidadeImovel
      esses ai são poucos, ficou dboas fazer um if(){} pra cada. Agora pensa comigo...
      Tenho uma TABELA clientes, guardo as informações dos clientes
      Tenho outra tabela imoveis, com os dados do imóvel e tbm com o cliente que cadastrou o imovel,
      na pagina pra editar-imovel.php, monto o <option> pra consultar na tabela clientes todos os clientes cadastrados, como deixo "selected" no nome do cliente que cadastrou o imóvel??
    • By eduardaarosaa
      Ola!! Estou tentando fazer o upload de múltiplos arquivos usando o laravel. Mas  estou tendo o seguinte erro ao tentar cadastrar: 
      "Call to undefined method Symfony\Component\HttpFoundation\FileBag::extension()"  
      Meu controller:
        public function cadastro_info(Request $request)
          {
              $dataForm = $request->except('_token');
              $nameFile = null;
              $loop = count($request->files);
              for ($i=0; $i< $loop; $i++) {
             
                  $name = uniqid(date('HisYmd'));
                  $extension = $request->files->extension();
                  $nameFile = "{$name}.{$extension}";

                  $upload = $request->files->storeAs('upload', $nameFile);
                }
                  if (!$upload)
                      return redirect()
                          ->back()
                          ->with('error', 'Falha ao fazer upload')
                          ->withInput();
              }
      Minha rota:
       Route::post('/cadastro_empresa', 'Site\SiteController@cadastro_info')->name('cadastro_info');
       
      O que estou carregando no controller:
      use Illuminate\Http\Request;
      use DB;
      use App\Http\Controllers\Controller;
      use App\Models\Site\cadastro;
       
      Gerei o link para o storage já 
       
      Alguém sabe dizer o motivo do erro?
       
      Obrigada!!!
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.