Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    DELETE IN (...) ma con la doppia clausola WHERE

    Ciao a tutti.
    Vorrei realizzare una cosa del genere:

    Codice PHP:
    DELETE FROM `tabellaWHERE `ID_utenteIN ('elenco','valori') AND `maschio` = `1
    In altre parole, cancellare da una tabella una serie di utenti ma che siano ANCHE maschi: ottimo script per un progetto femminista ... Beh ovviamente questo è solo un esempio

    Ricevo un errore ed effettivamente in rete non ho trovato nulla a riguardo.
    Mi confermate che è impossibile e devo usare il delete senza IN ( ovvero cancellare un valore per volta )?

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Togli gli apici nell'elenco dei valori e vedrai che funziona.

    edit. Oltretutto, se non sai a priori quali sono gli id relativi ai record che devi cancellare, faresti meglio e prima a usare il between al posto dell'in.

  3. #3
    Originariamente inviato da nicola75ss
    Togli gli apici nell'elenco dei valori e vedrai che funziona.

    edit. Oltretutto, se non sai a priori quali sono gli id relativi ai record che devi cancellare, faresti meglio e prima a usare il between al posto dell'in.

    Ciao nicola75ss, grazie per la risposta.
    Attenzione però, io so bene quali sono i valori da cancellare e li metto in elenco con IN.
    Nella pratica sarebbe qualcosa come

    Codice PHP:
    DELETE FROM `tabellaWHERE `ID_utenteIN ('1','3','7','34','23') AND `maschio` = `1
    Vale lo stesso il tuo suggerimento?

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Originariamente inviato da Tobler
    Ciao nicola75ss, grazie per la risposta.
    Attenzione però, io so bene quali sono i valori da cancellare e li metto in elenco con IN.
    Nella pratica sarebbe qualcosa come

    Codice PHP:
    DELETE FROM `tabellaWHERE `ID_utenteIN ('1','3','7','34','23') AND `maschio` = `1
    Vale lo stesso il tuo suggerimento?
    Ok, allora lascia IN ma rimuovi tutti gli apici

    DELETE FROM `tabella` WHERE `ID_utente` IN (1,3,7,34,23) AND `maschio` = 1

  5. #5
    Hai ragione, funziona alla grande. Non credevo che gli apici cambiassero così radicalmente il funzionamento.
    Ti ringrazio!

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.