PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (289): [1] 2 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 4334
Champion Отправлено: 09 Февраля, 2014 - 16:05:55 • Тема: несколько COUNT и JOIN • Форум: Работа с СУБД

Ответов: 5
Просмотров: 2483
Hawkmoth, group by же
KingStar пишет:
моему нужно использовать SUM (`s`.`id`)
Мне чуть доктор не понадобился. Не говорите так больше
Champion Отправлено: 14 Января, 2014 - 15:14:55 • Тема: Задачка по SQL • Форум: SQL и Архитектура БД

Ответов: 14
Просмотров: 113
count можно закешировать на некотрое время, чтоб не считать при каждом переходе на страницу.
Про строить карту я не очень увидел проблему. Когда в массивах с объувью и одеждой элементов поровну, тут всё понятно. А когда в одном больше, перекидываешь часть из одного в другой и опять же делаешь по-старому.
Champion Отправлено: 14 Января, 2014 - 14:41:05 • Тема: Задачка по SQL • Форум: SQL и Архитектура БД

Ответов: 14
Просмотров: 113
DeepVarvar пишет:
один выбирает все айдишники
Ну да, это я заметил. Но, как заметил tuareg, а если товаров будет многомного? Поэтому предложил вариант без стягивания всех айдишек.
Champion Отправлено: 14 Января, 2014 - 14:26:52 • Тема: Задачка по SQL • Форум: SQL и Архитектура БД

Ответов: 14
Просмотров: 113
Не смотрел код, поленился. Но такое решение будет удовлетворительно работать на больших объемах:
1 - Посчитать общее количество одежды (КОд) и общее количество обуви(КОб), подходящие под условия.
2 - Исходя из этого определить, на какой странице заканчивается первый то, чего меньше.
3 - Если мы просматриваем более раннюю страницу, то два селекта с одинаковым limit и фетчить оба по очереди.
4 - Если мы на странице, на которой закончился один из товаров, то LIMIT законченный товар делается по старым правилам, а новый товар - плюс разницу, необходимую для заполнения дыр.
5 - Если мы на странице, на которой товар уже закончился, то фетчим двойное количество незаконченного товара.

Только надо учесть, что размер страницы для того товара, который больше не одинаковый на каждой странице, а сначала N, потом N + K, потом 2*N, где К - количество недостающих товаров, чтобы заткнуть дыры там, где закончился первый тип товаров, а N обычное количество товара на странице, и поэтому вычисление первой цифры в LIMIT получится чуть сложнее, чем хотелось бы
Champion Отправлено: 14 Января, 2014 - 11:40:23 • Тема: Преобразование curl запроса в php код • Форум: Вопросы новичков

Ответов: 10
Просмотров: 1230
alidex пишет:
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

Попробуйте $post_data задать массивом name => 'Viktor kalinin' или "name=Viktor Kalinin" такой строкой, убрать curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT"); и убрать curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
Champion Отправлено: 13 Января, 2014 - 21:18:38 • Тема: Преобразование curl запроса в php код • Форум: Вопросы новичков

Ответов: 10
Просмотров: 1230
put обычно для загрузки файлов. И обычно запрещается веб серверами по соображениям безопасности. И при попыске что-нибудь отправить пишут обычно как раз что-то вроде
alidex пишет:
Method Not Allowed

Может post?
Champion Отправлено: 13 Января, 2014 - 14:39:38 • Тема: Номера записей в таблице без пропусков • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 43
Можете и дыры заткнуть, и не менять номера старым заказам. Для этого нужно хранить пулл удаленных заказов и при сохранении нового брать ему айдишку из этого пулла. Правда, часть свежих заказов будут иметь меньшие номера, чем более новые заказы.

Лучше конечно заказчику какие-нибудь дыры заткнуть.
Champion Отправлено: 13 Января, 2014 - 14:34:12 • Тема: Преобразование curl запроса в php код • Форум: Вопросы новичков

Ответов: 10
Просмотров: 1230
Точно PUT?
Champion Отправлено: 03 Ноября, 2013 - 11:23:29 • Тема: While + switch + brek • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 1114
А с меткой почему не работает?
Champion Отправлено: 01 Ноября, 2013 - 06:11:12 • Тема: Ошибка 502. Проблема из-за php 5.3 или из-за сервера • Форум: Вопросы новичков

Ответов: 10
Просмотров: 473
Мне тут вспомнился один проект. В нем как-то тоже начал происходить беспричинный segfault. Оказалось, что если в один из файлов добавить пробел/строку/комментарий, то segfault исчезал! Размер файла при сегфолте был ровно 32к. Чуть больше или меньше - и всё в порядке. Ни малейших представлений, как это объяснить - возможно, проблемы с резервированием памяти при подключении скриптов с таким размером, но вот такой случай.
Champion Отправлено: 31 Октября, 2013 - 18:43:05 • Тема: Ошибка 502. Проблема из-за php 5.3 или из-за сервера • Форум: Вопросы новичков

Ответов: 10
Просмотров: 473
логи
Champion Отправлено: 21 Октября, 2013 - 19:26:33 • Тема: Интересные задачи по SQL • Форум: SQL и Архитектура БД

Ответов: 25
Просмотров: 1601
Примерно вот так можно (почти то же самое, только букву по-другому получил).
Спойлер (Отобразить)
Работоспособность не проверил, не было возможности.
Champion Отправлено: 28 Сентября, 2013 - 13:45:16 • Тема: Условия в запросе mySql • Форум: SQL и Архитектура БД

Ответов: 8
Просмотров: 55
order by (`on` = '1' AND `launched` = '1') desc, (`on` != '1' AND `launched` != '1') desc.

Убрал order by и добился этим нужного порядка вывода и не озадачился - это прям не знаю. Прям мировоззрение мне перевернул.
Без order by порядок вывода будет меняться при одинаковых данных в зависимости от того, на какой платформе запускается запрос, от того, в каком порядке вставлялись данные и даже от текущей нагрузки на систему.
(Добавление)
или order by (`on` xor `launched`) asc
Champion Отправлено: 19 Сентября, 2013 - 12:11:37 • Тема: JOIN Запрос • Форум: Вопросы новичков

Ответов: 6
Просмотров: 362
->join('withdrawal w','t.id = w.product_id AND w.id = (SELECT max(id) FROM withdrawal where product_id = t.id)')

А еще: гадость - эти ваши ->join()->join()->where()
Champion Отправлено: 04 Сентября, 2013 - 08:55:44 • Тема: Отчет по дням недели • Форум: SQL и Архитектура БД

Ответов: 6
Просмотров: 71
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT
  2. month(date) month, sum(value) perMonth, sum(case when weekday(date) = 0 then value end) perSundays, sum(case when weekday(date) = 1 then value end) perMondays,
  3. sum(case when weekday(date) = 2 then value end) perThuesdays, ...
  4. FROM tbl
  5. GROUP BY month(date)
как цифры превртить в названия месяцев, Вы догадаетесь

Страниц (289): [1] 2 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB