- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Ситуация такая:
есть таблица
из нее нужно выбрать id если name='определенное значение'
если такого значения name нет в таблице, тогда вставить его и выбрать его id
это вариант выбрать/вставить/выбрать (минусы: если значения нет, то три операции)
есть еще вставить/выбрать (если значение есть, то "холостая" ненужная вставка)
Что еще можно придумать, чтобы не "напрягать" Mysql ?
Спасибо!
В первом варианте 2 операции. Зачем Вам снова выбирать после вставки? Вы же вставили - значит знаете что вставили.
Так что выбрать=>вставить для Вашей задачи оптимальнее некуда, все равно придется и выбирать и вставлять.
У вас тут сначала INSERT IGNOR потом SELECT
Если хотите снять нагрузку с мускула - кеширование на основе Redis/мемкешед/ets для уже существующих значений.
значит знаете что вставили
id то я не знаю какой у вставленной записи
id то я не знаю какой у вставленной записи
а гугл никак поюзать?
https://www.google.ru/search?client=opera&q=mysql+последний+id+в+таблице&sourceid=opera&ie=UTF-8&oe=UTF-8#newwindow=1&q=mysql+id+%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B5%D0%B3%D0%BE+insert
mysql_insert_id -- Возвращает ID, сгенерированный при последнем INSERT-запросе.
а гугл никак поюзать?
юзал
между вставкой и выборкой может быть вставка другого значения
юзал
между вставкой и выборкой может быть вставка другого значения
тогда у вас логика нарушена где-то
юзал
между вставкой и выборкой может быть вставка другого значения
Правда?
Транзации юзали?