Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Есть таблица из двух колонок, в первой автоматом (функцией now) подставляется текущая дата, во вторую записываются данные - число. Необходимо сделать вторую таблицу, то же состоящую из двух колонок, а вернее из двух ячеек, в одной вводится число, а во второй должна появиться разность между последним введённым числом из первой таблице и числом из второй таблице, которое записано в первую ячейку. Во второй таблице делать колонки не обязательно. Нужна будет только разность последнего введённого числа из первой таблицы и числа из второй таблицы, которое может вводиться раз в месяц, причём его можно перезаписывать. Поэтому речь о колонках не идёт, можно просто сделать две ячейки. За помощь заранее благодарен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2016, 23:35 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Гм... а смысл? Во-первых, какой смысл в этой разности, если через 5 минут в первую таблицу вставится ещё одна запись, и данные станут невалидными. Во-вторых, зачем хранить это самое "число из второй таблицы"? Ну а так - не вижу проблемы. Как искать "последнее введённое число" - на это аж две темы в FAQ написаны: FAQ: Нумерация строк и другие вопросы про использование переменных FAQ: Выборка первой/последней записи в группах Ну а вычитать, я полагаю, ты и так умеешь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2016, 23:47 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
с выборками всё понятно, мне надо как то таблицу создать что бы всё автоматически делалось. Данные будут валидны. Ввели новое число в первую таблицу, а во второй таблице второй ячейки новая разность, которая и нужна. Ввели во вторую таблицу в первую ячейку новое число, а во второй новая разность и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2016, 23:58 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Для этого поле под эту разность не нужно. Надо либо в запросе, где это значение требуется, вычислять его из текущих данных, или составить статический запрос, который это проделывает, и обращаться к нему как к таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2016, 07:47 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
PS. В данном случае статический запрос - это представление (view). PPS. Можно, конечно, организовать подобное на триггерах - но это из пушки по воробьям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2016, 07:49 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Может я ошибаюсь, но по моему и ячейку таблицы можно сделать такую которая была бы связанна с другими ячейками и в которую писалась бы разность ячеек с которыми она связанна. Зачем городить каждый раз сложный запрос, если можно один раз создать такую таблицу, а потом просто выбирать данные с этой ячейки и всё. И просто хотелось бы узнать как такую таблицу сделать, а не только реально создать её. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2016, 09:26 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Это потребуется создать не только таблицу, но и триггеры, которые организуют пересчёт значения по любому изменению любого влияющего значения. Как минимум 2 триггера, а чтобы охватить весь возможный диапазон действий, так и все 6... ну не стОит оно того. Тем более что запрос-то простейший. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2016, 09:38 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Может и не стоит. Просто уже интересно как это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2016, 12:50 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
А в чём сложность? Ну создаём таблицу. Скажем, так: Код: sql 1. 2. 3. 4. Пусть первая таблица у нас такая: Код: sql 1. 2. 3. 4. Соответственно при вставке, корректировке или удалении записей из первой таблицы нужно пересчитать calc_value во второй. Рассмотрим один из вариантов, когда пересчёт требуется - в таблицу first добавляется запись или записи. Именно эта процедура должна инициировать изменение во второй таблице - значит, триггер на первой. Изменение должно быть только в случае удачного добавления, значит, AFTER UPDATE. Итого Код: sql 1. 2. 3. 4. Всё... причём триггер корректно отработает даже в случае, если manual_value IS NULL - в поле calc_value тоже будет записано значение Null. Аналогично создаются остальные триггеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2016, 13:03 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
Akina, огромное спасибо за помощь! сейчас всё попробую. Тут у меня возникла ещё проблема. Пытаюсь выполнить команды mysql из командной строки bash. В конфиги my.cfg прописал логин, пароль, к какому хосту и базе подключаться. А так же прописал параметр: pager=/usr/local/sbin/mysqlsed | most mysqlsed вот такой: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. он табличку mysql из чёрточек и плюсиков меняет в нормальный вид. Но когда запускаю из командной строки bash: mysql -e "команда mysql" то этот pager как бы не работает, таблица выводиться mysql-увская из чёрточек и плюсиков и если она не вмещается в экран, то она ломается. most это пейджер, программка типа less или more, только она ещё раскручивает по горизонтали. Получается что и она не работает. Если выполнить вот так: mysql -e "команда mysql" | most то вывод уже не ломается и можно перемещаться по горизонтали если вывод не вмещается по горизонтали, но при этом исчезает mysql-евская табличка, таблицы вообще нет никакой и вывод немного смещается, неудобно, данные немного перемешиваются по столбцам. Как вывести всё вместе с таблицей и развернуть по горизонтали? За помощь буду ещё раз благодарен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2016, 11:53 |
|
||
|
помогите создать таблицу
|
|||
|---|---|---|---|
|
#18+
И ещё один момент. Версия mysql сервера у меня вот какая: mysqld -V mysqld Ver 5.5.17-log for Linux on i686 (Source distribution) У меня в системе несколько сетевых интерфейсов. Как мне в конфиге прописать что бы mysql сервер слушал не все интерфейсы, а только два из них. В интернете вычитал что в версиях 5.5 и старше это можно сделать, вписав несколько параметров bind-address, что я и сделал. bind-address = xxx.xxx.xxx.xxx bind-address = yyy.yyy.yyy.yyy но он слушает только тот который вписан последним, в данном случае yyy.yyy.yyy.yyy Как вписать, что бы он слушал именно два интерфейса, а не один вписанный последним. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2016, 12:04 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39372711&tid=1831053]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 144ms |

| 0 / 0 |
