|
|
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Мне нужно вывести среднюю сумму в месяц за последний месяц. Как будет выглядеть sql запрос? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 08:12:30 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
JulTКак будет выглядеть sql запрос?как одна или несколько строк латиницы да, чуть не забыл, там непременно будут слова select, avg, from, where, и, возможно, group by ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 08:47:29 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
ок, тогда так: вот собственно мои данные: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. или вам предоставить запросы для создания таблицы и заполнения данных? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 09:16:05 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Уже 4 года со скулем работаете (пусть даже не постоянно), а до сих пор не поняли, что язык-то простой, почти что разговорный, и запрос вы, собственно, уже сформулировали, осталось его на английский перевести :) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:13:05 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, чтобы не плодить тем, помогите, пожалуйста в этой. Выбираю все значения поля, для которого верно условие. Только условие толком описать на языке запроса не могу ибо нуб/первый раз делаю запрос. id index 1 8::100||28::50 2 9::100||8::50 3 81::100||28::50 Придумал только это: SELECT id FROM site_content WHERE index LIKE '8%n'; но не годится, так как во второй строке есть 8 после|| и она тоже должна попасть в выборку. а в третьей есть 81, которое не должно попасть в выборку. В общем суть вопроса, как описать, что ищется именно то, что до ::, и продолжается поиск в строке если есть || ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:22:30 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Вообще-то у вас отдельный вопрос, и лучше бы под него было создать отдельную тему имхо. Перефразирую вопрос - надо найти строки, которые: -либо начинаются с "8::" -либо в них есть подстрока "||8::" Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:28:21 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
tanglir, кратко и гениально точно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:43:50 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Получается, я слеп, глуп и достаточно запроса SELECT id FROM site_content WHERE index LIKE '%8::%'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:46:10 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Читайте про строковые функции . Первое условие проверяется с помощью left, второе с помощью instr. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:46:42 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
belkaU, неа :) через это условие спокойно пройдут строки "11118::" и "123::456||218::123" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:48:08 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
tanglir, чьорт побьери ) а я уж думал гениально упростился ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:51:23 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
а два запроса SELECT id FROM site_content WHERE index LIKE '8::%'; и SELECT id FROM site_content WHERE index LIKE '||8::%'; не будет ли более простым решением? Или это костыли? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:56:01 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
т.е. SELECT id FROM site_content WHERE index LIKE '8::%'; SELECT id FROM site_content WHERE index LIKE '%||8::%'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 11:57:08 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
belkaU, можно и так. А некоторые седобородые гуру в таких случаях и вовсе пишут оба условия через OR. Попробуйте, вдруг и у вас получится? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 12:19:02 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Получилось с таким запросом SELECT id FROM modx_site_tmplvar_contentvalues WHERE value LIKE '8::%' AND tmplvarid='11' OR value LIKE '%||8::%' AND tmplvarid='11' Теперь проблема с выводом через PHP. Может подскажете? Мой код возвращает полный путь, а нужны только value. <?php $res = $modx->db->query( "SELECT contentid FROM modx_site_tmplvar_contentvalues WHERE value LIKE '8::%' AND tmplvarid='11' OR value LIKE '%||8::%' AND tmplvarid='11'" ); while($row = $modx->db->getRow($res)) print_r($row); ?> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 14:23:05 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
belkaUМой код возвращает полный путь, а нужны только value.если вы выбираете contentid, то он и будет выводиться хотите выводить value - выбирайте value ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2014, 15:00:52 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
tanglirУже 4 года со скулем работаете (пусть даже не постоянно), а до сих пор не поняли, что язык-то простой, почти что разговорный, и запрос вы, собственно, уже сформулировали, осталось его на английский перевести :) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Делаю так: Код: sql 1. 2. 3. 4. Данный запрос выдает среднюю сумму за последний месяц(т.е. предыдущий, или текущий? что считается последним месяцем?), а как сделать не просто среднюю сумму, а среднюю сумму в месяц за последний месяц. Прошу помочь и спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2014, 18:20:29 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
И еще мне не понятно следующее: Вернуть средний чек вообще. Что туда должно входить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2014, 05:13:33 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
JulTа как сделать не просто среднюю сумму, а среднюю сумму в месяц за последний месяц.Что такое "средняя сумма в месяц за последний месяц"? Чем она отличается от просто "средней суммы за последний месяц"? JulTИ еще мне не понятно следующее: Вернуть средний чек вообще. Что туда должно входить?А об этом надо спросить того, кто ставит вам задачу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2014, 06:48:56 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Еще вопрос: мне нужно получить среднее кол-во заказов за текущий месяц. Делаю так: Код: sql 1. 2. 3. Т.е. беру все записи в текущем месяце и делю на кол-во дней в текущем месяце. Правильно? А как сделать: получить среднее кол-во заказов в месяц (т.е. без уточнения какой это месяц) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2014, 09:58:38 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
JulTЕще вопрос: мне нужно получить среднее кол-во заказов за текущий месяц. Делаю так: <...> Т.е. беру все записи в текущем месяце и делю на кол-во дней в текущем месяце . Правильно?Вообще-то это получается среднее количеством заказов в день . А правильно или нет - это опять же надо у постановщика задачи спрашивать, мы-то откуда можем это знать? JulTА как сделать: получить среднее кол-во заказов в месяц (т.е. без уточнения какой это месяц)Выбрать пары "месяц - количество заказов", после чего посчитать среднее по второму полю выборки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2014, 12:57:02 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
tanglirВыбрать пары "месяц - количество заказов", после чего посчитать среднее по второму полю выборки. Очень прошу, напишите, пожалуйста, запрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2014, 13:50:58 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. Код: sql 1. 2. 3. 4. 5. 1) Общее кол-во заказов: select count(*) from test where driver_id = 6 2) среднее кол-во заказов за месяц: Код: sql 1. 2. после беру разницу между мин и мах: Код: sql 1. и далее делю общее количество из 1) на PERIOD_DIFF Код: sql 1. 3) кол-во за последний месяц Код: sql 1. 4) сумма за предыдущий месяц: Код: sql 1. 2. 5) общая сумма Код: sql 1. 6) средняя сумма в месяц за весь период Код: sql 1. 7) средняя сумма в месяц за последний месяц Код: sql 1. 8) средний чек вообще (сумма всех денег разделить на весь период) беру всю сумму: Код: sql 1. и делю на количество месяцев PERIOD_DIFF('MAX','MIN') А теперь скажи мне, пожалуйста, правильно ли я сделала? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2014, 07:30:32 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
2)Ну, если вы так определяете "среднее за месяц", значит, так оно и должно считаться. 7)Наконец-то я понял у вас "средняя сумма" - это "средняя сумма операции", и один месяц с двумя операциями по 500 <> другому месяцу с одной операцией на 1000. Вообще как-то странно выходит. В одном месте у вас "среднее" - это среднее по периоду (за месяц). А в другом - это среднее по операциям. Может, конечно, так и должно быть (разные средние показатели, ничего удивительного), но опять же пока вы сами не определитесь, как оно должно считаться - даже не в плане написания запроса, а в плане постановки задачи -, никто вам не скажет, верно написано или неверно. Сами-то запросы написаны правильно. Но вот выводят ли они то, что вы хотите получить, не скажет никто, кроме вас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2014, 08:01:24 |
|
||
|
Помогите с запросом
|
|||
|---|---|---|---|
|
#18+
tanglir2)Ну, если вы так определяете "среднее за месяц", значит, так оно и должно считаться. 7)Наконец-то я понял у вас "средняя сумма" - это "средняя сумма операции", и один месяц с двумя операциями по 500 <> другому месяцу с одной операцией на 1000. Вообще как-то странно выходит. В одном месте у вас "среднее" - это среднее по периоду (за месяц). А в другом - это среднее по операциям. Может, конечно, так и должно быть (разные средние показатели, ничего удивительного), но опять же пока вы сами не определитесь, как оно должно считаться - даже не в плане написания запроса, а в плане постановки задачи -, никто вам не скажет, верно написано или неверно. Сами-то запросы написаны правильно. Но вот выводят ли они то, что вы хотите получить, не скажет никто, кроме вас. Нужно среднее по периоду 1. средняя сумма в месяц (в деньгах) за текущий месяц 2. средняя сумма в месяц (в деньгах) за весь период Им соответствуют такие запросы: Код: sql 1. 2. Правильно ли будет так? и что означает, например, когда мы делим среднее avg(sum) на кол-во месяцев со дня первой записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2014, 09:38:22 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38723060&tid=1834341]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
81ms |
get tp. blocked users: |
2ms |
| others: | 210ms |
| total: | 392ms |

| 0 / 0 |
