Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Возможно ли сократить update?
Strannik  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 7 дней
Карма: 1




Добрый день.

Приходится выполнять такой код:


$sql="
UPDATE `meta_page` SET `value`='"
.$c2."' WHERE `page`='".$c1."' AND `type`='title';
UPDATE `meta_page` SET `value`='"
.$c3."' WHERE `page`='".$c1."' AND `type`='description';
UPDATE `meta_page` SET `value`='"
.$c4."' WHERE `page`='".$c1."' AND `type`='keywords';
UPDATE `meta_page` SET `value`='"
.$c5."' WHERE `page`='".$c1."' AND `type`='author';
UPDATE `meta_page` SET `value`='"
.$c6."' WHERE `page`='".$c1."' AND `type`='copyright';";



Подскажите реально ли вместо 6 Update сделать 1 (сократить код) ?
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 12 дней
Карма: 623




CASE , WHEN , THEN


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 7 дней
Карма: 1




а есть ли вообще смысл в этом?
я имею ввиду будет ли код быстрее выполняться?

если через CASE, то получится что-то вроде этого:

UPDATE meta_page
SET value=
(
CASE
WHEN
(page='$c1' && type='title') THEN value='$c2'
WHEN (page='$c1' && type='description') THEN value='$c3'
WHEN (page='$c1' && type='keywords') THEN value='$c4'
WHEN (page='$c1' && type='author') THEN value='$c5'
WHEN (page='$c1' && type='copyright') THEN value='$c6'
END
)


P.S.: например для меня оказалось новостью, что запросы в MsSql пр использовании TOP выполняются на 96% медленнее, чем без него, в MySql наоборот при Limit гораздо быстрее работа...
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 12 дней
Карма: 623




Strannik
запусти и проверь. Сравни скорость работы. Иначе никак.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 7 дней
Карма: 1




Цитата (inpost @ 14.01.2013 - 04:15)
Strannik
запусти и проверь. Сравни скорость работы. Иначе никак.

да в том, то и дело, что этот запрос займет милисекунды, а я о глобальном сейчас)
например если запускать скрипты с такими запросами к базе от 100 000 строк.

P.S.: не так давно столкнулся с большими базами, теперь все анализирую сразу, чтобы потом зря время не терять...

P.P.S.: Да, и спасибо за помощь) я бы про case и не вспомнил, видел инфу наверное раньше 1 раз да и то мельком...
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 23010
Пользователь №: 20039
На форуме: 15 лет, 3 месяца, 12 дней
Карма: 623




Вот скажу одно, или скажу другое... это не значит, что будет истина. Лучше всего дождаться, когда таблица разрастется, тогда и проверять.
Объясню на примере, прошлая тема моя - почистить таблицу. Советы гугла - отключить индексы, типо быстрее будет, отключил индексы, а оказалось, что без индекса по полю, которое удаляю - удаляется в сотни раз медленнее. Гугл выдал так же на тему на хабре, там так же писали об этом методе.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 7 дней
Карма: 1




ясно, читай и доверяй, но лучше все тестировать самому)
Спасибо)
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса