Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [mysql] ordinare in base alla completezza del record
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • D
      dariomarco User Attivo • ultima modifica di

      Ok, grazie, va già meglio, non è un problema fare tante if 😄
      vorrei chiederti per cortesia se potresti farmi un piccolo esempio, anche con uno/due campi

      grazie, ciao.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        thedarkita ModSenior • ultima modifica di

        Eccoti un esempio con 2 campi:
        [php]
        SELECT *,if(campo1 != '', 1, 0) AS c1,if(campo2 != '', 1, 0) AS c2 FROM tabella ORDER BY (c1+c2) DESC
        [/php]
        Dovrebbe funzionare.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • D
          dariomarco User Attivo • ultima modifica di

          OH! finalmente qualcosa di concreto!!! Grazie!!!
          solo che non ho capito una cosa:

          campo1 != '', 1, 0

          campo1 - nome del campo
          1 - assegna un valore
          0 - ???

          Grazie, ciao.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            La sintassi dell if è:
            [php]
            if(condizione, vero, falso)
            [/php]
            Allora come ti dicevo prima è per fare un campo virtuale, il campo sarebbe importanza del record.
            Noi controlliamo se il campo1 non è uguale a niente incrementiamo l'importanza di 1, e quindi nell'ordinamento verrà preso prima degli altri con:
            [php]
            ORDER BY (c1+c2) DESC
            [/php]
            Spero di essere stato chiaro, è più facile a farsi che a dirsi. 😄

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • D
              dariomarco User Attivo • ultima modifica di

              Pui dirlo forte!!!
              Sei stato chiarissimo grazie!!!

              Ciao.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                thedarkita ModSenior • ultima modifica di

                Figurati.
                Se hai problemi chiedi pure.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • D
                  dariomarco User Attivo • ultima modifica di

                  Beh, già che ci sono ne approfitto 😄
                  volevo chiederti: ma se allungo un pò la query, non allungo anche il tempo di esecuzione dell script?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    thedarkita ModSenior • ultima modifica di

                    Dipende da come viene "allungata", ovviamente una soluzione del genere dovrebbe impiegare anche più tempo di un altro tipo di ordinamento.
                    Poi bisogna vedere quanti record ci sono nella tabella.

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • D
                      dariomarco User Attivo • ultima modifica di

                      I records sono tanti, ed anche gli if da fare... ma ho provato a testare il tempo di esecuzione su phpmyadmin e comunque si tratta di millesimi di secondi...
                      Questa è un'ottimo pregio di mysql, ma ho visto la documentazione, ed è molto interessante, non si ferma al semplice sql, ma va anche alla creazione di funzioni vere e proprie nonchè ad usare le regExp.
                      Mi chiedevo se esisteva una documentazione anche non ufficiale in italiano.

                      Grazie, ciao.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        thedarkita ModSenior • ultima modifica di

                        In italiano c'è poco e niente, purtroppo credo dovrai fare affidamento a testi in inglese.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        Caricamento altri post
                        Rispondi
                        • Topic risposta
                        Effettua l'accesso per rispondere
                        • Da Vecchi a Nuovi
                        • Da Nuovi a Vecchi
                        • Più Voti