-
Conteúdo Similar
-
Por lezão
Bom dia, galera!
Tudo bem com vcs?
Tenho uma tabela Itens com os campos Descrição e nome do produto, quando eu coloco no select.
Eu gostaria que me retorna-se, todos os nomes dos produtos e retornar apenas uma vez a Descrição.
Select com ORDER BY
"SELECT DISTINCT c.id, c.descricao, i.id_categoria, i.descricao_produto, i.id_item, i.nome_produto, i.imagem, i.preco, i.qntdade FROM tab_categoria AS c JOIN tab_itens AS i ON c.id = i.id_categoria WHERE c.id = i.id_categoria AND i.id_empresa = '$id_empresa' ORDER BY c.descricao" Select com GROUP BY, até da certo, mas retorna apenas um produto.
"SELECT DISTINCT c.id, c.descricao, i.id_categoria, i.descricao_produto, i.id_item, i.nome_produto, i.imagem, i.preco, i.qntdade FROM tab_categoria AS c JOIN tab_itens AS i ON c.id = i.id_categoria WHERE c.id = i.id_categoria AND i.id_empresa = '$id_empresa' GROUP BY c.descricao"
Veja como esta ficando do jeito que eu estou fazendo, com ORDER BY
Select_com_ORDER_BY
E com o GROUP BY
Select_com_GROUP_BY
-
Por Omar~
Opa!
Então.... como eu faria uma query que me retornasse apenas colunas cujo seu valor seja duplicado estou meio confuso como proceder?
Digamos uma query para exemplificar melhor:
SELECT * FROM tabela
E teria um resultado assim:
$resultado = [ 0 => [ 'id' => 1, 'repetido' => 'abcde' ], 1 => [ 'id' => 2, 'repetido' => 'aaaaa' ], 2 => [ 'id' => 3, 'repetido' => 'abcde' ], 3 => [ 'id' => 4, 'repetido' => 'bbbbb' ], ]; Então no índice 0 e no índice 2 tenho a coluna com o valor repetido.
Como eu poderia esta fazendo a query de forma que me retornasse somente os resultados que são repetidos?
Lembrando que não indicarei o valor de busca, pois foi isso que me pegou e não estou sabendo como proceder...
Até onde eu sei usei a lógica e não deu certo:
SELECT id, repetido FROM tabela GROUP BY repetido HAVING COUNT(repetido) > 1 Pois dessa forma só me retorna o último índice repetido e eu preciso de todos que forem repetidos.
-
Por biakelly
Olá Tudo bem?
Poderiam me ajudar com a seguinte condição:
<?php if ($row['facebook'] != "") { echo '<a class="btn btn-dark btn-social mx-2" href="<?php echo $row['facebook']; ?>"><i class="fab fa-facebook-f"></i></a>'; } else { echo ''; } ?>
Estou recebendo o seguinte erro:
Parse error: syntax error, unexpected 'facebook' (T_STRING), expecting ';' or ',' in C:\xampp\htdocs\biazinha\inicial.php on line 371
A linha 371 é essa:
echo '<a class="btn btn-dark btn-social mx-2" href="<?php echo $row['facebook']; ?>"><i class="fab fa-facebook-f"></i></a>';
-
Por Hamilcar
Bom dia!
Peguei um sistema para atualizar para funcionar, o problema é que foi criado uma ligação de tabelas meio louca aqui, vou tentar explicar, tem uma tabela usuários que tem um id, e tem uma outra tabela em que a usuários é ligada e nela pode ter um ou mais usuários, o problema é que foi colocado os ids na mesma linha separados por um caracter, e os usuários se repetem, vou colocar abaixo para exemplificar:
Tabela Usuarios/id
id1, id2, id3...
Tabela Escala
id_escala1_idUser -> id1|id2|id3...
id_escala2_idUser -> id1|id2|id3...
Como vou gastar um tempo para refazer novamente o banco de dados, queria fazer funcionar momentaneamente, e gostaria da ajuda para tentar se possível fazer uma consulta que me traga todos os usuarios listados na tabela escala
-
Por Rodymb
Bom dia!
Estou fazendo um select em uma tabela de cupom fiscal e preciso que me mostre o operador do caixa e o supervisor que liberou a venda, que no caso é convênio.
A consulta que montei é a seguinte:
select c.m00ad as CUPOM,
c.m00ac as PDV,
c.m02ak as VALOR,
p.descricao as FINALIZADORA,
c.m02ah as OPERADOR,
f.nome as NOME_OP,
c.m02ao as SUPERVISOR,
f.nome as NOME_SUP
from zan_m02 c inner join tab_funcionario f
on c.m02ao = f.cod_funcionario
inner join tab_finalizadora p
on c.m02ai = p.cod_finalizadora
where c.m00af = to_date('09/03/20','dd/mm/yy')
and c.m00za = 3
and c.m00ac = 9
and c.m00ad = 379678
group by c.m00ad,c.m00ac,c.m02ak,p.descricao,c.m02ah,f.nome,c.m02ao;
A consulta me retorna o seguinte resultado:
Como podem ver, repetiu o mesmo nome (operador e supervisor), sendo que o código é diferente.
Isso acontece por que na tabela de funcionário o campo NOME serve para operador e supervisor e o que diferencia se é supervisor ou operador temos mais duas outras tabelas. A estrutura é assim:
tab_funcionario -> temos o campo cod_funcionario e nome (todos os funcionários cadastrados são armazenados nessa tabela)
tab_perfil -> temos os campos cod_perfil e descricao (todos os perfis cadastrados são armazenados nessa tabela)
tab_perfil_funcionario -> temos os campos cod_funcionario e cod_perfil (tabela que relaciona as tabelas tab_funcionario e tab_perfil)
A única coisa que preciso é que apareça no NOME_OP o nome do operador e não o nome do supervisor igual está aparecendo.
-