Ho unito le stesse due tabelle due volte utilizzando diversi alias in una query SQL per consentirmi di selezionare 2 (potenzialmente ma non sempre) ID di indirizzi diversi che poi collegano nella tabella degli indirizzi.Differenziazione tra 2 nomi di colonne SQL con lo stesso nome in C# SqlConnection
SELECT C.court_id, C.court_name, CA.court_address, CA2.court_address...
FROM court C " +
JOIN court_addr CA ON C.court_addr_id = CA.court_addr_id " +
JOIN court_addr CA2 ON C.court_postal_addr_id = CA2.court_addr_id " + ...
Ora, quando si cerca di produrre i risultati di questa query utilizzando ASP.NET C# io sono sicuro come specificare quale dei due indirizzi a Response.Write. Mettere l'alias davanti al nome della colonna (come nel 4 ° valore di stringa sotto) non funziona e fa apparire un errore. C'è un modo di differenziare tra i due indirizzi in C# nonostante abbiano entrambi lo stesso nome di colonna nel database?
while (myDataReader.Read())
{
string court_id = myDataReader["court_id"].ToString();
string court_name = myDataReader["court_name"].ToString();
string court_address = myDataReader["court_address"].ToString();
string court_postal_address = myDataReader["CA2.court_address"].ToString();
etc.....
Ringraziandovi muchly in anticipo
Eccellente, grazie. E soprattutto per la risposta molto veloce. Ho lavorato a meraviglia e posso usare lo stesso principio su altre colonne che potrebbero dover apparire più di una volta. –
@DanSolo - L'uso di un alias significativo dovrebbe aiutare a semplificare la vita. Ad esempio, se il primo 'JOIN' è quello di individuare la Corte d'Appello (IANAL.) Quindi utilizzare' CourtOfAppeals' o 'CoA' piuttosto che' CA2' per l'alias. Generalmente utilizzo un punto negli alias di colonne per separare l'alias di tabella dal nome della colonna, ad es. 'CoA.Court_Name'. – HABO