2010-04-28 2 views
0

Возможно ли, чтобы псевдоним агрегатной функции в предложении select как AliasTable.AliasColumn? Причина в том, что я хочу минимальные изменения в своих массивах (я использую PHP). Благодаря!SQL Alias ​​as Table.column

P.S. Я использую SQL Server 2008

PS # 2 Пример: SELECT MAX (Person.name) имя, MAX (Person.Address) адрес, Farm.id, ОТ Farm LEFT JOIN Человек на Человека. farm_id = Farm.id GROUP BY Person.name

мог я псевдоним имя как Person.name и адрес как Person.Address (он не должен быть "Person")

ответ

1

Вы можете создать SQL-представление, содержащее оператор select, с помощью функции aggregate как псевдонима. Таким образом, у вас не будет проблем с этим в вашем PHP-коде, потому что вы можете использовать SQL View в виде таблицы.

оператор SQL Образец для создания представления:

CREATE VIEW FarmView 
AS 
SELECT MAX(Person.name) name, MAX(Person.address) address, Farm.id, 
FROM Farm LEFT JOIN Person ON Person.farm_id = Farm.id 
GROUP BY Person.name 

Образец заявления SQL для использования вид:

SELECT name, address, id 
FROM FarmView 
ORDER BY name 
+0

могли бы вы привести пример о том, как это сделать? Благодаря! – bakerjr

+0

Добавил несколько образцов для вас по вашему запросу. – Prutswonder

0

Если вы говорите что-то например select t.a, t.b, sum(a) as c from table1 t group by t.a, t.b, тогда это возможно. В противном случае вы можете отправить свой SQL-запрос здесь.

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