|
|
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
Пожалуйста помогите ещё сделать несколько запросов, для курсовой, очень нужно :) да и вы заодно разомнетесь - вспомните ;) или хотяб подскажите.. вообщем ближе к делу :) - 1) имеются 3 таблицы. со столбцами допустим: 1) 2) 3) А А Б Б В Г так вот из этого, нужно чтобы была выходная таблица, со столбиками: А В Г причем Г это среднее между всеми повторяющимися В а В выбирается из списка на форме из таблицы 3 а А выбирается из списка на форме из таблицы 1 2) те же таблицы все тоже... только нужно чтобы отобразилось А Г , причем Г среднее из всего что осталось . тоесть В не выбирается, а А также задается ой чет я намудрил.. :) вообщем если криво обьяснил вот такой текст задания: Определить средний балл по группе и всем группам в пределах конкретной дисциплины. в первой таблице названия дисциплин, во второй название дисциплины а также наименование опроса, а в третьей наименование опроса и код группы и оценка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.02.2007, 21:32 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
Вычислением среднего занимается функция AVG(). Ответ на вопросы - это разные признаки группировки. Но суть одна и та же. Запросы вида: SELECT GroupId, AVG(FieldValue) FROM MyTab GROUP BY GroupId FieldValue - это поле, среднее значение которого надо определить GroupId - это поле, в пределах которого вычисляется это среднее значение Например, средний балл по группе, означает, что GroupId - код группы, а FieldValue - поле со значением балла. Если нужен просто средний балл по всему списку, то группировку опускают SELECT AVG(FieldValue) FROM MyTab Ну, и ко всему этому добавляется объединение 3 таблиц между собой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2007, 00:38 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
не очень понял как связать.. потому сделал еще 1 столбик, и сделал такой запрос: CLOSE TABLES all USE sessia!student SELECT avg(ocen) as Средняя_оценка FROM student WHERE student.kg = thisform.combo2.Value AND student.nd = thisform.combo1.Value вроде всеработает, щитает, однако после первого же запроса, после закрытии получившейся таблицы выскакивает сообщение - Cannot acsess the selected table ну и повисает.. как это убрать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2007, 14:53 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
У тебя в Combo в свойстве RowSource что прописанно? Если таблица, то перед закрытием таблиц сбрось его (Combo.RowSource='') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2007, 15:05 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
в первом комбо-prepodavatel.pd а во втором-student.kg еще заметил что не обязательно закрывать чтобы ошибка появилась.. я просто подвинул, и кликунул на форму, и опять таже ошибка.. просто после нее блокируется комбо, и нужно делать выход чтобы поновой посчитать Combo.RowSource='' а это не помогает .всеравно таже ошибка.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2007, 16:34 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
?не очень понял как связать.. Понимание SQL (Understanding SQL) ?потому сделал еще 1 столбик, и сделал такой запрос: CLOSE TABLES all USE sessia!student SELECT avg(ocen) as Средняя_оценка FROM student WHERE student.kg = thisform.combo2.Value AND student.nd = thisform.combo1.Value вроде всеработает, щитает, однако после первого же запроса, после закрытии получившейся таблицы выскакивает сообщение - Cannot acsess the selected table ну и повисает.. как это убрать? А почитать HELP по тем командам, которые использовали не пробовали? Вы хоть поняли ЧТО сделали? Да даже не HELP, а просто перевести название ключевых слов на русский CLOSE TABLES all - закрыть таблицы ВСЕ. Как Вы думаете, какие таблицы-источник данных остануться доступными после такой команды? Так что "Cannot acsess ..." вполне закономерно. Вы же сами все закрыли. Какой уж тут "access" Далее, приведенный Вами запрос конечно же "щитает". Весь вопрос в том, что именно? И куда Вы посылаете результат это "щета"? "На деревню, дедушке"? Вы получаете одно число. Надо понимать по выбранным значениям ComboBox. Результат отображется в Browse-окне. И что? Что Вы собираетесь дальше с этим числом делать? Как минимум, в команде Select-SQL надо использовать опцию INTO, чтобы потом можно было программно работать с результатом выполнения запроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2007, 22:15 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
SELECT INTO avg(ocen) ..... ну добавил инто, вообще теперь не принимает.. а про закрытие, вроде же при нажатии кнопки будут закрываться, а затем опять открываться. значит должно работать.. попробовал удалить close tables all, и начинается перемешиватся инф. в комбо1 и комбо2 местами.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2007, 13:32 |
|
||
|
Запрос2 :)
|
|||
|---|---|---|---|
|
#18+
хм.. перемешалось в другом запросе.. даже не перемешалось а просто некоторые записи одной таблицы попали в другою.. щас исправил поидее должно нормально во! нет ошибки, нашел способ! :) CLOSE TABLES all USE sessia!student эту фразу просто стер, и теперь все работает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2007, 13:45 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34357567&tid=1589816]: |
0ms |
get settings: |
6ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 341ms |

| 0 / 0 |
