Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Query Insert e Select

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    82

    Query Insert e Select

    Ciao, ho un problema, avrei necessità di una query che controlli in una tabella l'occorrenza di una riga avente un campo uguale a quello passato ed in caso non esista, la inserisca, in altre parole qualcosa del genere:

    INSERT INTO reservations (date, number) VALUES($date, $max_num) WHERE NOT EXIST(SELECT * FROM reservations WHERE date = $date)

    Il problema è che cercando sul sito mysql mi son trovato con questo avviso:

    To avoid ambigious column reference problems when the SELECT and the INSERT refer to the same table, provide a unique alias for each table used in the SELECT part, and qualify column names in that part with the appropriate alias.
    Cosa dite?

    In pratica non potrei effettuare un select come subquery di un insert, corretto?

    Come potrei ovviare?

    Grazie
    [TrGh]

  2. #2
    insert ... select non verifica se esiste, ma copia un record per inserimento nella tabella. Occio che un insert ... select sulla stessa tabella, id permettendo (sarebbe id duplicato) , non farebbe altro che duplicare un record ed il che non ha senso.

    Nel tuo caso potresti usare REPLACE al posto di INSERT (cfr. manuale) oppure un select count(*) preventivo.

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

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.