Russian Qt Forum
Ноябрь 23, 2024, 16:00 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QSqlTableModel есть 2 SQL колонки, как сделать не SQL 3-ю A*B?  (Прочитано 7499 раз)
Druxa
Гость
« : Сентябрь 20, 2007, 18:04 »

есть QSqlTableModel которая вставляется в QTableView, как добавить в модель и связать с видом свой какой-нибудь расчёт?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Сентябрь 20, 2007, 18:09 »

Возможно туплю, но что-то типа
SELECT base1.id,base1.name,base1.money*base2.money FROM base1,base2 WHERE base1.kurs=base2.id
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Druxa
Гость
« Ответ #2 : Сентябрь 20, 2007, 18:24 »

Возможно туплю, но что-то типа
SELECT base1.id,base1.name,base1.money*base2.money FROM base1,base2 WHERE base1.kurs=base2.id
Не не надо средствами БД, не хочу её перегружать.
Записан
Вячеслав
Гость
« Ответ #3 : Сентябрь 20, 2007, 18:28 »

Возможно туплю, но что-то типа
SELECT base1.id,base1.name,base1.money*base2.money FROM base1,base2 WHERE base1.kurs=base2.id
Не не надо средствами БД, не хочу её перегружать.
Для любого современного сервака _такие_ расчеты - ничто.... Ты его больше выборкой нагрузишь(в сысле чтением с диска) Подмигивающий Да и намного проще однако Подмигивающий
Записан
ритт
Гость
« Ответ #4 : Сентябрь 20, 2007, 20:46 »

>Для любого современного сервака _такие_ расчеты - ничто...

согласен.
но не проблема ведь сделать и средствами кутэ, причём, задача тривиальная.

наследуешься от QSqlQueryModel и перегружаешь метод QVariant data(const QModelIndex& index, int role) const
по индексу узнаёшь номер столбца (или параметр, по которому будешь определять в какой столбец/строку писать расчётные данные) и вызовами даты из требуемых ячеек набираешь исходные данные для обсчёта

советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка

а, да...практически забыл: перегрузи ещё ровКаунт и колКаунт Улыбающийся
« Последнее редактирование: Сентябрь 20, 2007, 20:48 от xep » Записан
Вячеслав
Гость
« Ответ #5 : Сентябрь 20, 2007, 22:21 »

>Для любого современного сервака _такие_ расчеты - ничто...

согласен.
но не проблема ведь сделать и средствами кутэ, причём, задача тривиальная.

наследуешься от QSqlQueryModel и перегружаешь метод QVariant data(const QModelIndex& index, int role) const
по индексу узнаёшь номер столбца (или параметр, по которому будешь определять в какой столбец/строку писать расчётные данные) и вызовами даты из требуемых ячеек набираешь исходные данные для обсчёта

советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка

а, да...практически забыл: перегрузи ещё ровКаунт и колКаунт Улыбающийся

Ну да .... дописать ~50 символов в запрос или городить свой класс - каждый выбирает сам ;)Мне ехать(и нехай сервак думает - будет возникать или запросы причешу или еще мозгов добавлю Подмигивающий побыстрее.....
Записан
ритт
Гость
« Ответ #6 : Сентябрь 20, 2007, 23:24 »

ну, если у него в третьем столбце простая арифметика, то, конечно, проще запросом и не ипсти мозги на форуме...
а ежели какое-нибудь моделирование или др. сложные вычисления? - тоже запросегом?
Записан
Вячеслав
Гость
« Ответ #7 : Сентябрь 21, 2007, 09:32 »

ну, если у него в третьем столбце простая арифметика, то, конечно, проще запросом и не ипсти мозги на форуме...
а ежели какое-нибудь моделирование или др. сложные вычисления? - тоже запросегом?
Пример можно ? моделирования ?
Вариантов-то масса Подмигивающий И для каждого случая надо свой ввыбирать по месту .... Бензопилой картошку тоже чистить можно, но вот удобно-ли ?
Записан
ритт
Гость
« Ответ #8 : Сентябрь 21, 2007, 10:07 »

ну, так-то да...если ему конкретно формула из сабжа была нужна, то тема давно исчерпана
Записан
matsumoto
Гость
« Ответ #9 : Сентябрь 21, 2007, 11:46 »

советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка


что за прослойка такая? можно поподробнее?
Записан
Druxa
Гость
« Ответ #10 : Сентябрь 21, 2007, 21:08 »

Народ, расчёт простой, но их штук 10 нужно сделать, что стандартных Qt методов нету как я понял Грустный
Записан
Вячеслав
Гость
« Ответ #11 : Сентябрь 21, 2007, 21:46 »

если математика простая - пихай в запрос Подмигивающий Если что-нибудь типа статистики - или делай свой класс как выше советовали или смотри в сторону ХП ....
Записан
Icoz
Гость
« Ответ #12 : Сентябрь 25, 2007, 19:30 »


советую между вью и моделью поставить фильтрсортпроксимодель - весьма качественная прослойка

что за прослойка такая? можно поподробнее?

Думаю тебе про http://doc.trolltech.com/4.3/qproxymodel.html#details пытались сказать...
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.061 секунд. Запросов: 22.