|
PHP / MySQL Создание динамических Веб-ресурсов |
20.03.2011, 20:40
|
#1
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Проблема с вычисляемым столбцом в SQL
Есть таблица, в ней столбец "Количество".
Надо в вычисляемом столбце найти долю.
Пишем [Количество] / SUM([Количество])
Внезапно получаем Ошибка при проверке формулы для столбца "Доля".
Разные варианты скобок, кавычек, mod вместо деления и т.п. пробовал.
|
(Offline)
|
|
20.03.2011, 21:43
|
#2
|
Знающий
Регистрация: 14.06.2009
Сообщений: 338
Написано 139 полезных сообщений (для 257 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
а мона весь запрос?
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
21.03.2011, 11:55
|
#3
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Пока еще не запрос. Я в СУБД создаю таблицу.
|
(Offline)
|
|
21.03.2011, 12:00
|
#4
|
Знающий
Регистрация: 14.06.2009
Сообщений: 338
Написано 139 полезных сообщений (для 257 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Сообщение от cherepets
Пока еще не запрос. Я в СУБД создаю таблицу.
|
Силой мысли создаёшь?
|
(Offline)
|
|
21.03.2011, 22:45
|
#5
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Не силой мысли, а средствами СУБД.
Вот в виде запроса:
CREATE TABLE [dbo].[Персонал]( [ID_перс] [int] IDENTITY(1,1) NOT NULL, [Должность] [nchar](10) NOT NULL, [Количество] [int] NOT NULL, [Доля] AS ([Количество] / SUM([Количество])) ) ON [PRIMARY]
|
(Offline)
|
|
21.03.2011, 23:29
|
#6
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Не совсем понял чего ты добиваешься этой строкой.
[Доля] AS ([Количество] / SUM([Количество]))
Ты не можешь использовать так. Если тебе нужен запрос из этой таблицы, то ты должен её создать сперва, затем уже делать запросы ( SELECT).
|
(Offline)
|
|
22.03.2011, 00:06
|
#7
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Нет. Мне нужен в таблице столбец, который будет вычисляться по формуле.
|
(Offline)
|
|
22.03.2011, 00:11
|
#8
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
То есть когда вводишь данные, он будет изменять их автоматически?
Тебе нужны тогда триггеры.
|
(Offline)
|
|
22.03.2011, 00:45
|
#9
|
Нуждающийся
Регистрация: 05.08.2008
Сообщений: 73
Написано 11 полезных сообщений (для 24 пользователей)
|
Сомневаюсь что изменять нужно когда вводишь. SUM([Количество]) меняется с каждым добавлением, значит и вычислять долю нужно с каждым SELECT
вот например у меня таблица `some_table`:
ID | kolvo
-----------
SELECT
some_table.*,
some_table.kolvo / `SUM_TBL`.`SUM` as Dolya
FROM
some_table,
(
SELECT SUM(some_table.kolvo) as `SUM` FROM some_table
) as `SUM_TBL`
|
(Offline)
|
|
22.03.2011, 11:06
|
#10
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Т.е. нельзя добавить такой столбец в ту же таблицу?
|
(Offline)
|
|
22.03.2011, 12:14
|
#11
|
Нуждающийся
Регистрация: 05.08.2008
Сообщений: 73
Написано 11 полезных сообщений (для 24 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Это не Exel. Тут в ячейку нельзя забить формулу. Она не будет динамической. Выход только считать долю во время выборки
|
(Offline)
|
|
22.03.2011, 12:57
|
#12
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Просто формулу можно. Видимо нельзя забить именно формулу, которая работает не только с текущей строкой.
Печально, ну ладно, сделаю запросом...
|
(Offline)
|
|
22.03.2011, 12:58
|
#13
|
Знающий
Регистрация: 14.06.2009
Сообщений: 338
Написано 139 полезных сообщений (для 257 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Я вот понять не могу, триггеры из другой религии или как? Что за СУБД? Только не говори, что Access
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
22.03.2011, 22:12
|
#14
|
Бывалый
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений (для 215 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Не Access. MSSQL.
Триггеры нельзя. Я для универа делаю задание и приходится использовать то, что в задании указано.
|
(Offline)
|
|
23.03.2011, 01:29
|
#15
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Ответ: Проблема с вычисляемым столбцом в SQL
Тогда используй temporary tables. Что в задании указано, сделать в один запрос? Или как?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:12.
|