Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Una query per select e update

    Un campo del database mysql contiene un numero che rappresenta un contatore di visite.
    Vorrei, con una sola query, estrarre tale numero e incrementarlo con un update.

    Ho provato di tutto ma non ce l'ho fatta. Esiste una query che fa al caso mio?

  2. #2
    Perchè non vuoi/puoi utilizzare due query separate (SELECT + UPDATE)?

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    97
    in mysql dovrebbe funzionare così:

    UPDATE nomeTabella SET nomeCampo = nomeCampo + 1

    fonte: http://www.risorse.net/mysql/modificare_riga.asp

    una domanda per filippo.toso
    ma qual è la tua attuale occupazione?... rispondere a questo forum?

    (così per scherzare un po')

  4. #4
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    Con

    UPDATE nomeTabella SET nomeCampo = nomeCampo + 1
    però fa solo l'UPDATE. Se ho capito bene lui vorrebbe anche tirare fuori il valore che gli deriverebbe da una SELECT
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    97
    La vedo dura allora!!!!

  6. #6
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    si potrebbe complicare la vita con una storage procedure, ma perchè incasinarsi quando con due query semplici semplici potrebbe ottenere ciò che gli serve ?
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

  7. #7
    Potrebbe avere restizioni sul numero di query giornaliere...

    Fosse fare:

    select valore from tabella where (update tabella set valore = valore + 1)...

    Potrebbe andare?

    Ora la provo
    ...::: DESIDERARE E' UMANO :::...
    ...::: POSSEDERE E' DIVINO :::...
    ...::: HAVE A NICE DAY :::...
    (¯`·.¸¸.->ĐĮ ĦΞŁŁ<-.¸¸.·`¯)
    http://www.djhellclub.com

  8. #8
    no, non và, pèerò ho trovato delle soluzioni online:

    UPDATE tablename INNER JOIN (SELECT tablename.ID from tablename WHERE
    usage='somevalue' ORDER BY id LIMIT 1000) as rows_to_update ON
    rows_to_update.id = tablename.id
    SET checked=1

    fonte:

    http://lists.mysql.com/mysql/168023
    ...::: DESIDERARE E' UMANO :::...
    ...::: POSSEDERE E' DIVINO :::...
    ...::: HAVE A NICE DAY :::...
    (¯`·.¸¸.->ĐĮ ĦΞŁŁ<-.¸¸.·`¯)
    http://www.djhellclub.com

  9. #9
    Il motivo per cui voglio usare una sola query è che ho delle limitazioni giornaliere.
    Non pensavo mi avreste fornito la soluzione tanto velocemente!
    I prossimi giorni provo quella suggerita da djhell e vi faccio sapere.

  10. #10
    Utente di HTML.it L'avatar di ade_v
    Registrato dal
    Jan 2001
    Messaggi
    459
    Anzichè mettere il tuo contatore di visita in un campo del db, perchè non scrivi in un file txt che apri e leggi con fopen e fread e scrivi con fwrite ?

    Così ti togli ben due query
    ade_v@yahoo.it

    Fletto i muscoli e sono nel vuoto

    Se inviate messaggi privati, avvisatemi sul forum...

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.