Есть ли способ автоматически добавлять строку ко всем выбранным полям в таблице? - PullRequest
0 голосов
/ 09 ноября 2011

У меня есть выбор с объединением.Я знаю, что могу сделать это:

table1.id as table1_id, table1.name as table1_name

Мне было интересно, можно ли сделать это автоматически при выборе полей таким образом:

table1.*

Я полностью понимаю, что это плохопопрактиковаться, но это полезно для локального тестирования, и мне было интересно, можно ли было сделать что-то подобное.

Большое спасибо.

1 Ответ

2 голосов
/ 09 ноября 2011

Я бы порекомендовал добавить некоторый дополнительный контекст к именам полей вашего идентификатора и имени (например, если у вас есть таблицы Person и Employer, вы можете использовать person_id и Employer_id в качестве имен полей).

Вместо измененияструктура вашей таблицы, я не думаю, что вы можете автоматически добавлять имена таблиц к полям, которые вы можете выбрать.Но вы можете создать представление для своего запроса, а затем в своем приложении выбрать его.Рассмотрим этот пример:

+-------------+     +-------------+
| Person      |     | Employer    |
+-------------+     +-------------+ 
| id          |     | id          |
| name        |     | name        |
| employer_id |     +-------------+
+-------------+   

CREATE VIEW PersonEmployer AS
SELECT 
  person.id as `person_id`, 
  person.name as `person_name`, 
  employer.id as `employer_id`, 
  employer.name as `employer_name`
FROM 
 Person 
 INNER JOIN Employer ON (Person.employer_id = Employer.id);

SELECT * FROM PersonEmployer;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...