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. Sottrazione tra risultati
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • N
      nik06 User • 3 ago 2007, 18:45 ultima modifica di

      Sottrazione tra risultati

      Ciao,

      devo fare questa sottrazione:

      $dato = prezzo_oggi - prezzo_di 10 records prima;

      Non so come richiamare dal db il secondo cioè il sottraendo ...

      Consigli?

      Grazie e buon lavoro

      :xNik

      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
         

      • F
        federico.p User • 3 ago 2007, 20:28 ultima modifica di

        Ciao nik...

        penso che nessuno possa esserti di aiuto (io compreso) se non ci dai più informazioni riguardo la tabella nel db e/o parte del codice.

        Posta qualcosa che ti aiutiamo 😉

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • A
          ayrton2001 Super User • 4 ago 2007, 00:51 ultima modifica di

          @nik06 said:

          Ciao,

          devo fare questa sottrazione:

          $dato = prezzo_oggi - prezzo_di 10 records prima;

          Non so come richiamare dal db il secondo cioè il sottraendo ...

          Consigli?

          Grazie e buon lavoro

          :xNik

          Secondo me dovresti fare due query:
          la prima richiama i "prezzo_oggi"
          la seconda i "prezzo_di 10 records prima"
          Poi sottrai.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • N
            nik06 User • 4 ago 2007, 18:27 ultima modifica di

            Sì, è quello che sto cercando di fare ma mi risulta un pò difficile scrivere tutte e due le query, la sottrazione invece è Ok.

            $dato = ($prezzo_oggi - $prezzo_10 records prima);

            poi la variabile $dato la inserisco per esempio in una tabella.

            Se puoi aiutarmi a scrivere le query, grazie.

            Nik

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • A
              ayrton2001 Super User • 4 ago 2007, 20:53 ultima modifica di

              @nik06 said:

              Sì, è quello che sto cercando di fare ma mi risulta un pò difficile scrivere tutte e due le query, la sottrazione invece è Ok.
              Anche a me risulta difficile aiutarti se non mi dai piu informazioni.
              Puoi fare cosi.
              Prima query selezioni i "prezzi_oggi"
              Salvi in un array $arr1
              Seconda query selezioni i prezzi di 10 giorni fa
              Salvi in un array $arr2
              for ($i=0;$i<10;$i++)
              $diff*] = $arr1*-$arr2*

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • N
                nik06 User • 5 ago 2007, 13:00 ultima modifica di

                Come faccio a selezionare il prezzo di dieci giorni fa?

                Cosa va scritto nella query?

                $prezzo_10giornifa = "SELECT prodotto, timeStamps, prezzo, FROM tabella WHERE prodotto = '$prodotto' ORDER BY timeStamps DESC LIMIT 10";

                è così che si estrae il prezzo del decimo giorno? oppure in questo modo mi estrae solo gli ultimi dieci records, dal primo al decimo?

                Nik

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • N
                  nik06 User • 5 ago 2007, 15:10 ultima modifica di

                  Sto provando in questo modo:

                  $oggiedieci = "SELECT prodotto, timeStamps, prezzo FROM tabella WHERE prodotto = '$prodotto' ORDER BY timeStamps DESC LIMIT 10";
                  $d_oggiedieci = $db->sql_query($oggiedieci);
                  $row = $db->sql_fetchrow($d_oggiedieci);
                  $dato_oggi = $row['prezzo'];
                  $row = $db->sql_fetchrow($d_oggiedieci,9,'prezzo');
                  $dato_dieci = $row['prezzo'];
                  $diff = ($dato_oggi - $dato_dieci);
                  $diff = number_format($diff, 3, '.', '');
                  if ($diff>0.0) {
                  $out="<font class="">+" . $diff . "</font>";
                  }
                  else if ($diff<0.0) {
                  $out="<font class="">. $diff . "</font>";
                  }
                  else {
                  $out="<font class=""> 0.00</font>";
                  }

                  ma la differenza la fa tra gli ultimi due records.

                  Consigli su come far prendere il decimo record?

                  Nik

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • A
                    ayrton2001 Super User • 5 ago 2007, 16:04 ultima modifica di

                    ogni riga della tabella è relativa ad un giorno?
                    Ossia:
                    riga 1: 2 Agosto
                    riga 2: 3 Agosto
                    riga 3: 4 Agosto
                    etc...

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • F
                      federico.p User • 6 ago 2007, 08:55 ultima modifica di

                      Ciao,

                      se in php hai la data come timestamp non formattato (un numero es. questo: 85947388500) allora puoi trovare la data di 10 giorni fa prendendo la data di oggi (es quel numero) e sottraendoci (864000 che risultato di (86400*10) cioè il valore di 10 gg in timestamp)

                      Dopodiche potresti fare una ricerca con questi valori.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • N
                        nik06 User • 21 ago 2007, 18:24 ultima modifica di

                        Scusate il ritardo,

                        sono stato fuori.

                        Rispondo ad Ayrton2001:

                        sì, ogni riga della tabella si riferisce a un giorno.

                        Rispondo a federico.p:

                        il timestamp non è formattato, si presenta così: 20070821.

                        Ho fatto una cosa di questo tipo richiamando le 10 righe (mi sono fermato alla terza):

                        $primoedecimo = "SELECT campo1, timeStamps, campo3 FROM tabella WHERE campo1 = '$campo1' ORDER BY timeStamps DESC LIMIT 10";
                        $d_primoedecimo = $db->sql_query($primoedecimo);
                        $row = $db->sql_fetchrow($d_primoedecimo);
                        $dato_oggi = $row['campo3'];
                        $row = $db->sql_fetchrow($d_primoedecimo);
                        $dato_due = $row['campo3'];
                        $row = $db->sql_fetchrow($d_primoedecimo);
                        $dato_tre = $row['campo3'];

                        e così via fino a richiamare il decimo giorno. Secondo voi si può accorciare?

                        $diff = ($dato_oggi - $dato_dieci);
                        $diff = number_format($diff, 3, '.', '');

                        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