Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    142

    Query multiple: è possibile?

    Ho scoperto mio malgrado che non è possibile, almeno credo, fare delle query multiple separate da un punto e virgola. Ad esempio:

    mysql_query(SELECT * FROM miatabella; SELECT * FROM altramiatabella)

    E' possibile in qualche modo dare in pasto a qualche funzione PHP una query multipla? Nel mio caso servirebbe per creare delle tabelle.

    Grazie a tutti

  2. #2
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    mysql_query() in PHP supporta una sola query per volta (invece il client da riga di comando, ad esempio, supporta anche query multiple)

    sul manuale di PHP propongono qualche workaround, ma si tratta, appunto, di scappatoie:
    http://www.php.net/mysql_query
    nei commenti c'è qualche considerazione a riguardo, e qualche pezzo di codice di esempio
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  3. #3

    Re: Query multiple: è possibile?

    Originariamente inviato da alecsss
    Ho scoperto mio malgrado che non è possibile, almeno credo, fare delle query multiple separate da un punto e virgola. Ad esempio:

    mysql_query(SELECT * FROM miatabella; SELECT * FROM altramiatabella)

    E' possibile in qualche modo dare in pasto a qualche funzione PHP una query multipla? Nel mio caso servirebbe per creare delle tabelle.

    Grazie a tutti
    da come hai scritto sembra che tu abbia bisogno di tutti i campi presenti in queste due tabelle, prova..
    Codice PHP:
    $selezione "SELECT * FROM miatabella, altramiatabella";
    mysql_query($selezione); 

  4. #4
    io ci avevo provato così ma non andava!
    stavo tentando di fare una specie di motore di ricerca...

    la mia query era così:

    SELECT * FROM tabella, altratabella WHERE titolo LIKE '%parola%'

  5. #5
    Sicuro che la tua soluzione non sia una semplice join?

    "SELECT * FROM tabellauno AS ta JOIN tabelladue AS tb ON ta.id=tb.id"

    Questa query ti selezionerà tutte le righe delle due tabelle che hanno i campi id identici ad esempio, naturalmente puoi giocarci costruendoti query molto più complicate o subquery

    "SELECT * FROM tabella WHERE id = (SELECT num FROM tabelladue WHERE (date + INTERVAL 2 HOUR > NOW())) ORDER BY id DESC" boh

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    29
    Hmm.. Prova a fare così :
    Codice PHP:
    mysql_query("SELECT miatabella.*, altramiatabella.* FROM miatabella, altramiatabella"); 

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.