Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Select solo id pari

  1. #1

    Select solo id pari

    Io ho questa query :

    SELECT id, nome_cat, nome_sub
    FROM `categorie`
    LEFT JOIN sub_cat ON categorie.id = sub_cat.id_cate
    WHERE categorie.id = sub_cat.id_cate


    e ottengo i seguenti risultati

    1 vino barbera
    1 vino dolcetto
    1 vino barbaresco
    2 salumi salame
    2 salumi filetto baciato
    2 salumi cotechino
    3 formaggi montebore
    3 formaggi pecorino
    3 formaggi castelmagno
    4 dolci baci di dama
    4 dolci giacometta
    4 dolci torrone


    Ora vorrei estrarre solo i dati con id pari come posso fare ?

  2. #2
    Hai provato così ?

    SELECT ...
    ...
    WHERE MOD(id, 2 ) = 0
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  3. #3
    grazie giancarlo non conoscevo l'esistenza di MOD
    eppure sono andato a ripetizioni di Mysql dal dottor Piero.Mac !!!
    Grazie ancora

    SELECT id, nome_cat, nome_sub
    FROM `categorie`
    LEFT JOIN sub_cat ON categorie.id = sub_cat.id_cate
    WHERE categorie.id = sub_cat.id_cate
    AND MOD( id, 2 ) =0

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Anche io ignoravo l'esistenza di questa funzione. Ti stavo suggerendo id%2=0 che avrebbe risolto ugualmente ma gm mi ha anticipato.
    Abbiamo imparato una cosa nuova.
    Ci servono ancora ripetizioni dal Dottor mac e dal prof. gm.

  5. #5
    Originariamente inviato da nicola75ss
    Anche io ignoravo l'esistenza di questa funzione. Ti stavo suggerendo id%2=0 che avrebbe risolto ugualmente ma gm mi ha anticipato.
    Abbiamo imparato una cosa nuova.
    Ci servono ancora ripetizioni dal Dottor mac e dal prof. gm.
    tu specialmente.....

    id % 2 = 0 e assolutamente identico a
    MOD(id, 2 ) = 0 cosi' come lo e'
    id MOD 2 = 0

    occhio alle versioni di mysql....

    MOD(N,M), N % M, N MOD M

    Modulo operation. Returns the remainder of N divided by M.

    mysql> SELECT MOD(234, 10);
    -> 4
    mysql> SELECT 253 % 7;
    -> 1
    mysql> SELECT MOD(29,9);
    -> 2
    mysql> SELECT 29 MOD 9;
    -> 2

    This function is safe to use with BIGINT values. The N MOD M syntax works only as of MySQL 4.1.0.

    As of MySQL 4.1.7, MOD() works on values that have a fractional part and returns the exact remainder after division:

    mysql> SELECT MOD(34.5,3);
    -> 1.5

    Before MySQL 4.1.7, MOD() rounds arguments with a fractional value to integers and returns an integer result:

    mysql> SELECT MOD(34.5,3);
    -> 2

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Originariamente inviato da piero.mac
    tu specialmente.....

    id % 2 = 0 e assolutamente identico a
    MOD(id, 2 ) = 0 cosi' come lo e'
    id MOD 2 = 0

    occhio alle versioni di mysql....



    Sul fatto che mi servano lezioni non ci piove Piero.
    Però ho capito che la soluzione di gm fa lo stesso lavoro di id % 2 = 0.
    Semplicemente non conoscevo la funzione mod.
    Adesso la so.

  7. #7
    ciao piero quello che mi ha spiegato in quell'oasi di pace mi sta tornando davvero utile

    Bello il mysql davvero

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 © 2025 vBulletin Solutions, Inc. All rights reserved.