Pagina 6 di 11 primaprima ... 4 5 6 7 8 ... ultimoultimo
Visualizzazione dei risultati da 51 a 60 su 103
  1. #51
    posta query e codice php per comporla, eseguirla e leggerne il risultato, non fare il tirchio come al solito

  2. #52
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Quote Originariamente inviata da optime Visualizza il messaggio
    per come te l'ho suggerita, ovviamente un'altra query
    Quindi prima il risultato si ottiene dalla prima query e poi ne faccio una seconda......

    Ho provato ma il risultato non era quello che cerco, stasera posto la query.
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  3. #53
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Dovresti anche farci un paio di esempi. Il caso più semplice e quello più complicato. Perché a seconda dei requisiti, la prima query potrebbe cambiare.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #54
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Questa la query dopo la prima, sinceramente penso che questa escluda i risultati della prima.

    Ottengo la data dalla prima query e poi.

    Codice PHP:
    $data $row["data"];
    $query"SELECT *, DATE_FORMAT(data, '%d-%m-%Y') AS datax FROM tabella WHERE data>$data LIMIT3"
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  5. #55
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Ho fatto una pagina a parte per visualizzare i risultati ottenuti dalla prima query tra limite di date.

    Passo il valore $data di oghi risultato alla nuova pagina, tento di ottenere una data naggiore di 5 giorni e poi le utilizzo per fare una query tra limiti di date ottenendo così i 3 o 4 valori successivi alla data visualizzata, non riesco però a venirne a capo con l'aggiunta di 5 giorni.

    Codice PHP:
    $data $_GET['data'];

    list(
    $anno$mese$giorno) = explode('-',$data);
    $data1 date("Y-m-d",mktime (0,0,0,$anno,$mese$giorno 5)); 
    Gli passo data=2024-04-02 e la data ottenuta è data = '2175-08-04'
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  6. #56
    Da dove escono fuori adesso i 5 giorni?

  7. #57
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Quote Originariamente inviata da optime Visualizza il messaggio
    Da dove escono fuori adesso i 5 giorni?
    Dal +5?

    Ho risolto così

    Codice PHP:
    $data $_GET['data'];
    $data1 strtotime '+10 day' strtotime $data ) ) ; 
    $data1 date 'Y-m-d' $data1 ); 
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  8. #58
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Però la stessa query che utilizzo per estrarre dalla mia tabella i valori tra due date, in questa pagina mi rende una sola riga.

    I dati ci sono.

    La query è corretta.

    SELECT * FROM tabella WHERE data>='2024-03-19' AND data<='2024-03-29' ORDER BY data ASC

    Codice PHP:
    $query "SELECT * FROM tabella WHERE data>='{$data}' AND data<='{$data1}' ORDER BY data ASC"
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  9. #59
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Allora, la query e i risultati ottenuti con la pagina fatta per visualizzare i successivi 3 record partendo dal risultato della prima query

    Codice PHP:
    $query "SELECT *, DATE_FORMAT(data, '%d-%m-%Y') AS datax, IF(primo IN($primo$secondo$terzo$quarto$quinto$sesto), 1, 0) + IF (secondo  IN($primo$secondo$terzo$quarto$quinto$sesto), 1, 0) + IF (terzo  IN($primo$secondo$terzo$quarto$quinto$sesto), 1, 0) + IF (quarto   IN($primo$secondo$terzo$quarto$quinto$sesto), 1, 0) + IF (quinto  IN($primo$secondo$terzo$quarto$quinto$sesto), 1, 0) + IF (sesto   IN($primo$secondo$terzo$quarto$quinto$sesto), 1, 0) AS numero FROM tabella HAVING numero >= $chiave ORDER BY data DESC";} 
    funziona.

    Codice PHP:
    $query "SELECT  *, DATE_FORMAT(data, '%d-%m-%Y') AS datax FROM tabella WHERE data>='{$data}' AND data<='{$data1}' ORDER BY data ASC LIMIT 3"
    Adesso mi manca come integrare il tutto in una pagina, e li non ho idea di come formulare la query successiva alla prima in alto.....
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  10. #60
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    523
    premesse,

    1) prove eseguite con MS SQL (e' il db che ho a disposizione)

    2) ho cercato soluzioni prima che parlassi di date, quindi ho usato ID o ROW_NUMBER non DATE

    3) con ID (esempio piu' semplice) non devono esserci buchi nella sequenza, con ROW_NUMBER viene usata una sequenza temporanea

    4) tutte le tabelle e le variabili precedute da @ sono temporanee per evitare di creare e cancellare tabelle

    codice:
    id      campo1  campo2  campo3  campo4  campo5  campo61001    11    12    13    14    15    16
    1002    1    2    3    24    25    26
    1003    31    32    33    34    35    36
    1004    41    42    43    44    45    46
    1005    51    52    53    54    55    56
    1006    61    62    63    64    65    66
    1007    71    72    73    74    75    76
    1008    81    82    83    4    5    6
    1009    91    92    83    94    95    96
    
    
    -- cerco i valori 1 2 3 4 5 6
    codice:
    -- primo esempio ---------------------------------------------------------------
    
    SELECT t2.* FROM (
      SELECT
        id
      , Row_Number() over (order by id) AS rn  -- NON USATO
      FROM @users
      WHERE
        CASE WHEN campo1 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
      + CASE WHEN campo2 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
      + CASE WHEN campo3 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
      + CASE WHEN campo4 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
      + CASE WHEN campo5 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
      + CASE WHEN campo6 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END  > 2
    ) t1
    INNER JOIN @users t2 ON 
    t1.id = t2.id + 3    OR 
    t1.id = t2.id + 2    OR 
    t1.id = t2.id + 1    OR 
    t1.id = t2.id;
    
    
    -- RISULTATO
    
    
    id      campo1  campo2  campo3  campo4  campo5  campo6
    1001    11    12    13    14    15    16
    1002    1    2    3    24    25    26
    1005    51    52    53    54    55    56
    1006    61    62    63    64    65    66
    1007    71    72    73    74    75    76
    1008    81    82    83    4    5    6
    codice:
    -- secondo esempio -------------------------------------------------------------
    
    WITH CTE1 AS
    (
        SELECT
          Row_Number() over (order by id) AS rn
        , CASE WHEN campo1 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
        + CASE WHEN campo2 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
        + CASE WHEN campo3 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
        + CASE WHEN campo4 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
        + CASE WHEN campo5 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END
        + CASE WHEN campo6 IN(@n1, @n2, @n3, @n4, @n5, @n6) THEN 1 ELSE 0 END AS totale
        , *
        FROM @users
    ), CTE2 AS
    (
    SELECT * 
    from CTE1
    WHERE totale > 2
    )
    SELECT * FROM CTE2
    INNER JOIN CTE1 ON CTE1.rn = CTE2.rn - 3
    		OR CTE1.rn = CTE2.rn - 2
    		OR CTE1.rn = CTE2.rn - 1
    
    
    -- RISULTATO
    
    
    rn      totale  id      campo1  campo2  campo3  campo4  campo5  campo6  rn      totale  id      campo1  campo2  campo3  campo4  campo5  campo6
    2	3	1002	1	2	3	24	25	26	1	0	1001	11	12	13	14	15	16
    8	3	1008	81	82	83	4	5	6	5	0	1005	51	52	53	54	55	56
    8	3	1008	81	82	83	4	5	6	6	0	1006	61	62	63	64	65	66
    8	3	1008	81	82	83	4	5	6	7	0	1007	71	72	73	74	75	76

    Ultima modifica di marino51; 06-04-2024 a 00:16

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.