Как получить два поля с одинаковыми именами из разных таблиц с ASP и SQL Server? - PullRequest
0 голосов
/ 14 февраля 2012

Прежде всего, прости меня, если это странный вопрос, но ясно, что это не для меня.

Я пытаюсь сделать это:

    sql="SELECT Alerts.id, Alerts.id_person, Alerts.type, Alerts.date, 
    People.id, People.name, FROM Alerts, People
    WHERE People.name='"& name &"' AND People.id=Alerts.id_person"
    set RS=oADO.Execute(sql)

Но, так как оба Оповещения и Люди имеют поле с именем id , у меня возникла проблема при обращении к ним.Мне не разрешено делать RS.Fields("Alerts.id") или RS.Fields("People.id"), только RS.Fields("id") И это не позволяет мне выбирать, какое поле я хочу использовать (и на самом деле мне нужно использовать оба из них).

Я не могу изменить структуру DDBB (она не была сделана мной).

Любой намек на то, что я могу сделать?Большое спасибо.

Я забыл сказать, что здесь будет выбрано много записей, и я поиграю с ними с

While not RS.EOF
Lorep Ipsum
Wend

1 Ответ

6 голосов
/ 14 февраля 2012

Вы можете создать псевдоним для имени столбца, используя «as» в вашем операторе select:

пример: People.id as PersonID

sql="SELECT Alerts.id, Alerts.id_person, Alerts.type, Alerts.date, 
    People.id as PersonID, People.name, FROM Alerts, People
    WHERE People.name='"& name &"' AND People.id=Alerts.id_person"

Это позволяет использовать:

RS.Fields("PersonID")
...