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

    Select con campi scelti da altra query

    Non sto a illustrare tutto il progetto di cui fa parte questa SELECT, ma mi limito a illustrare ciò che sto tentando di fare.
    La SELECT che devo eseguire è parametrica, del tipo

    Siamo in MySQL.

    SELECT <campo> FROM PIPPO

    Il campo da estrarre lo devo a sua volta estrarre da una seconda tabella che censisce i campi ammissibili.
    La tabella che censisce i campi, che chiameremo TAB_CAMPI, è molto semplice.
    Ha un ID e un campo VARCHAR nel quale c'è il nome esatto del campo della tabella PIPPO che devo estrarre con la prima query.

    Ora, facendo

    SELECT (SELECT campo FROM TAB_CAMPI WHERE ID = n) FROM PIPPO

    Quello che mi esce è un risultato VARCHAR contente esattamente la subquery fra parentesi

    Qualcuno ha dei suggerimenti?

    Sono un javista, oltre a scrivere anche in altri linguaggi e in SQL sono sempre stato carente
    Chiedo scusa se la questione sarà banale, ma a me sfugge

  2. #2
    devi fare due query; non conoscendo la sintassi java ti spiego solo la teoria

    prima estrai il valore della variabile campo, con la query
    SELECT campo FROM TAB_CAMPI WHERE ID = n

    poi "costruisci" la seconda query in java, con qualcosa del tipo

    qry="SELECT " + campo + " FROM PIPPO"

    e poi la esegui


    facce sape'

  3. #3
    No, il problema del Java non si pone.
    Sto creando una script PHP, ma è tutto indipendente dal linguaggio di programmazione.

    Volevo tentare di fare tutto con una query senza eseguire due transazioni.
    Non è possibile estrarre il nome del campo e poi castarlo a CHAR o comunque stringa e iniettarlo nella query che lo deve utilizzare?

  4. #4
    devi comunque costruire la query, ma non so come si possa fare in MySql

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.