usando a função de campo para solicitar resultados por in () order
em mysql, a cláusula por ordem por ordem pode ser usada para classificar os resultados da consulta em ordem ascendente ou descendente. Ao usar o método in (), pode ser difícil garantir que os resultados sejam retornados na mesma ordem que os IDs na cláusula in (). Felizmente, existe uma solução: a função de campo.
A função de campo leva dois parâmetros: um nome de campo e uma lista de valores. Ele retorna o índice do primeiro valor na lista que corresponde ao valor do campo. Por exemplo, a consulta a seguir retornaria os valores 1, 2, 3, para a coluna "ID" para linhas onde o valor é 3, 2 ou 1:
SELECT id, FIELD(id, 3, 2, 1) AS ordering FROM table_name;
selecione ID, campo (id, 4, 7, 3, 8, 9) conforme a ordem de tabela_name;
SELECT id, FIELD(id, 4, 7, 3, 8, 9) AS ordering FROM table_name;
4 - Artigo 4 7 - Artigo 7 3 - Artigo 3 8 - Artigo 8 9 - Artigo 9
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3