Commande MySQL par deux colonnes
J'ai un Tableau Comme ci-Dessous
CREATE TABLE Produits(Produit_id INT, Nom VARCHAR(255), En vedette enum('Oui', 'Non'), la Priorité enum ("p1", "p2", "p3")) INSERT INTO Produits(ProductName, en Vedette, la Priorité) VALUES('Produit', 'Oui', 'p1'), ("Produit B', 'Non', 'p2'), ("Produit C', 'Oui', 'p1'), ('D', 'Non', 'p1'), ('E', 'Oui', 'p3'), ("Produit F', 'Non', 'p2'), ("Produit G', 'Oui', 'p1'), ("Produit H', 'Oui', 'p2'), ('Produit', 'Non', 'p2'), ("Produit J', 'Oui', 'p3'), ("Produit K', 'Oui', 'p1'), ("Produit L', 'Non', 'p3');
J'ai Besoin d'obtenir les produits en Vedette suivie de produit avec de priorité p1, p2 et p3
Op: ProdName | Vedette | Priorité Produit Un Oui p1 Produit C Oui p1 Produit G Oui p1 Produit K Oui p1 Produit H Oui p2 Le produit E Oui p3 Produit J Oui p3 Produit D Aucun p1 Le produit B N p2 Produit F N p2 Produit que je N'p2 Produit L Pas de p3
J'ai Écrit une requête ci-dessous, ce qui n'est pas de travail..
SÉLECTIONNEZ * PARTIR de Produits COMMANDE EN Vedette DANS ('Oui') desc, Priorité ("p1", "p2", "p3") desc
U pourrait plz spot erreur en que
source d'informationauteur Athi
Vous devez vous connecter pour publier un commentaire.
Essayer cette
Si vous utilisez la COMMANDE PAR mysql enum il ne sera pas à l'ordre par ordre alphabétique, mais il sera de l'ordre par sa position dans l'enum.
Si vous souhaitez commander par ordre alphabétique comme vous le décrivez cast le nom enum
pour une chaîne comme celle-ci
Pourquoi ne pas simplement utiliser SQL :
En faisant cela,
Yes
apparaîtra avantNo
.P1
apparaîtra avantP2
etP2
avantP3
. Je crois, qu'est ce que vous voulez.Si le type de données numéro de commande, puis,
Vérifier cette requête--
Violon
De travail de vérification de code de violon
Cela devrait fonctionner