Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Что выгднее [2]

 PHP.SU

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


 Страниц (2): « 1 [2]   

> Без описания
Bio man
Отправлено: 11 Сентября, 2012 - 15:38:32
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




tuareg пишет:
Если все же хочешь сразу выбрать всю БД.
Тогда сформируй json отправь его клиенту и там уже работай
это мне и так понятно, но перед отправкой данные нужно обработать должным образом а цикл из тысячей итераций думаю будет не очень быстрым.
 
 Top
Мелкий Супермодератор
Отправлено: 11 Сентября, 2012 - 15:46:57
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




tuareg пишет:
я бы вообще сделал дополнительный столбик, в котором хранил первую букву. И делал выборку по нему.

+1. Триггеры для поддержки поля актуальным в помощь.


-----
PostgreSQL DBA
 
 Top
Bio man
Отправлено: 11 Сентября, 2012 - 15:58:40
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Мелкий, то есть лучше всего колонку создать? Если не трудно, можно триггер привести?

(Отредактировано автором: 11 Сентября, 2012 - 15:58:58)

 
 Top
Мелкий Супермодератор
Отправлено: 11 Сентября, 2012 - 16:18:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Bio man, как ни странно - но да. Поле будет быстрее, сгруппируется для получения всех встречающихся букв по индексу (+ count по индексу можно считать), выбирается потом тоже по индексу успешно.

А триггера - сейчас, только вспомню, как они пишутся Ха-ха
Вроде так:
CODE (SQL):
скопировать код в буфер обмена
  1. DELIMITER //
  2. CREATE TRIGGER `makeFirstLetterField` BEFORE INSERT ON `table`
  3.  FOR EACH ROW BEGIN
  4. SET new.letterfield=substr(new.`textfield`,1,1);
  5.   END
  6. //
  7. DELIMITER ;

Для апдейта идентичен вроде. А для делита - и не нужен.


-----
PostgreSQL DBA
 
 Top
Bio man
Отправлено: 11 Сентября, 2012 - 16:29:20
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Мелкий
спасибо, сработало.
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB