2011-05-04 3 views
0

Когда я запускаю запрос, выбирающий поля из нескольких таблиц, то есть для объединения, я хотел бы сделать что-то вроде:результаты SQL возвращаются в формате tablename.fieldname

SELECT table1.field1, table2.field2 FROM table1 JOIN table2 ON table1.field1 = table2.field1; 

Когда результаты запроса, как это возвращается массив имеет только имена полей в качестве индекса, а не комбинацию имени tablename.fieldname, и мне интересно, можно ли вернуть его в этот формат, потому что это требуется плагином, который я использую.

спасибо.

EDIT: Я думал о создании псевдонима, но так, как работает плагин, он принимает столбцы, которые я им даю буквально, а затем ищет эти EXACT имена в массиве. В основном я даю ему столбцы, он динамически получает данные и отображает их. Поэтому, если я дам ему «table1.field1 AS alias», он будет искать это, но полученное поле будет просто «псевдонимом».

EDIT 2: Я нашел решение своей проблемы, это не было решением SQL. Я обработал результирующий массив запроса с помощью PHP, чтобы вернуть его в формат, в котором мне нужно было.

ответ

0

Один из вариантов - использовать псевдоним для столбцов.

+0

ли вы имеете в виду делать ВЫБЕРИТЕ table1.field1 AS псевдоним ... и т.д. ... Если это то, что вы имеете в виду, я думал, что делать это, но так, что плагин работает, он принимает столбцы, которые я им даю буквально, а затем ищет эти EXACT-имена в массиве. В основном я даю ему столбцы, он динамически получает данные и отображает их. Поэтому, если я дам ему «table1.field1 AS alias», он будет искать это, но полученное поле будет просто «псевдонимом». – Key

+0

@Key: ** он будет искать это, но полученное поле будет просто «псевдонимом» **, что вы подразумеваете под этим? –

+0

Прошу прощения за путаницу, если вы посмотрите на мои ответы на M.R., это может немного понять, что я имею в виду. – Key

0

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

 

SELECT table1.field1 as [table1.field1], table2.field2 as [table2.field2] FROM table1 JOIN table2 ON table1.field1 = table2.field1 
 
+0

См. Мой ответ Гарри Джой, такая же проблема. Даже если это ответит на мой вопрос ... Вероятно, я должен был быть более точным. Я также редактировал свой оригинальный вопрос с учетом этого ответа. – Key

+0

не уверен я понимаю. Если ваш выведенный псевдоним - «table1.field1», почему плагин не примет ТО ТОГО? Вы говорите, что вырезает часть «table1»? –

+0

Я использую плагин таблицы jQuery для передачи имен столбцов сценарию PHP, и этот сценарий динамически создает запрос для получения запрошенных данных, а затем возвращает его в плагин в JSON для отображения на странице. Поэтому для таблиц, которые нуждаются в соединениях, я должен использовать формат tablename.fieldname, а затем, когда запрос запускается, имя таблицы удаляется из индекса в массиве. Итак, когда плагин jQuery ищет столбцы в формате tablename.fieldname, он не может их найти, потому что это просто имя поля. – Key

Смежные вопросы