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

    [SQL] reperire campo tabella per numero anzichè per nome

    ciao a tutti ragassuoli,
    avrei un problema.
    Come si fa a prelevare dei campi di una tabella specificando non il nome dei campi ma il numero corrispondente al loro ordine nella lista dei campi?
    Mi spiego con un esempio: se ho una tabella con tre campi, campo1, campo2 e campo3, vorrei fare una query del tipo

    select tabella.1, tabella.3
    from tabella

    che prelevi la prima e la terza colonna di ogni record. Esiste qualcosa del genere in SQL (e, possibilmente, in Oracle)?

    grazie a tutti

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    298
    SELECT [nometabella].[campo1], [nometabella].[campo3]
    FROM [nometabella];

  3. #3
    Forse non mi sono spiegato bene: io non voglio indicare il nome del campo, ma il numero corrispondente al loro ordine nella lista delle colonne della tabella.

    Lo so che con

    select tabella.campo1, tabella.campo3
    from tabella

    prelevo i campi 'campo1' e 'campo3', ma io vorrei non dover indicare il nome, ma appunto il fatto che volgio la prima e la terza colonna.

    Qualcuno sa come fare?

    Grazie e ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    298
    una volta, quando mi dilettavo con vb, mi sembra ci fosse una collezione (tipo tipo form, forms, per intenderci) in cui potevi recuperare i nomi dei campi con una riga di comando tipo questa:

    querydef(nomequery).querydefs(numerocampo)

    ripeto, lo facevo tempo fa, ora come ora non so se sia possibile e soprattutto se sia esatto.
    se questo si può fare, puoi vedere se è possibile sostituire i nomi dei campi con una definizione del genere.

    prova a guardare nell'help del vba (se hai access)

  5. #5
    Originariamente inviato da RobMcSword
    una volta, quando mi dilettavo con vb, mi sembra ci fosse una collezione (tipo tipo form, forms, per intenderci) in cui potevi recuperare i nomi dei campi con una riga di comando tipo questa:

    querydef(nomequery).querydefs(numerocampo)

    ripeto, lo facevo tempo fa, ora come ora non so se sia possibile e soprattutto se sia esatto.
    se questo si può fare, puoi vedere se è possibile sostituire i nomi dei campi con una definizione del genere.

    prova a guardare nell'help del vba (se hai access)
    non sono in vb, ma in oracle.
    Con un linguaggio (Java ad esempio) il problema è risolto, ma i serve farlo direttamente in SQL...

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    298
    rieccomi qua.
    scusa il ritardo, ma mi si è rotto il pc.

    con la terza volta spero di risponderti

    allora,
    nel testo che ho io, cito:
    nelle dichiarazioni select è possibile solamente mettere
    o l'asterisco,
    o il nome della tabella.asterisco
    o il nome del campo

    dai però un'occhiata anche alla guida sql qui su html; in un'articolo fanno cenno a delle fantomatiche variabili...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.