- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Поделитесь, как справляетесь с длинными SQL запросами?
Нужно что-то вроде diff, чтобы подсветило раницу, чтобы можно было временно выкинуть часть добившись идентичности, а после добавления новых данных вернуть убранное.
На ум приходит только побить по строчкам и смотреть обычным diff, но это опять дополнительная работа.
Желательно, чтобы переваривало PHP включения в виде переменных, опять же, чтобы не выполнять лишнюю работу.
А какую задачу преследуете? Не совсем понятно, идентичность чему следует добиться и почему временно.
Тут больше для "механического" внесения готовых правок в имеющемся коде, а не сочинения запроса с нуля.
К примеру, есть некий "мод" для кода, добавляющий определённые функции.
Представляет из себя набор правок, в т.ч. и SQL запросов.
Записывается как обычный diff или его вариации -- участки различающегося кода, при этом, строки с запросами просто меняются одна на другую.
Производится разработка, во время которой в код вносятся свои правки, и в запрос в том числе, т.е. он существенно видоизменяется.
Теперь нам надо применить "мод" к изменённому коду, но он-то у нас создан относительно кода оригинального, и прямым diff тут ничего не сделать.
Т.е. нам приходится вручную выставлять две строчки с запросом в редактор без переноса, и внимательно смотреть по всей длине, в чём различие нашего кода с оригиналом.
Далее, мы запоминаем позицию, где наши изменения, и "выкусываем" их, чтобы привести код к заменяемому diff'ом виду.
Применяем мод, далее вспоминаем, что где стояло, ставим на место.
В разработке обычно используют миграции
Оптимизайка, это труъ way, я понимаю, что можно и нужно так, но сейчас не об этом.
Подумал, что меня бы устроил просто хороший инструмент сравнения длинных строк, но и его почему-то нет.
В выдаче лишь вопросы, как написать такое на разных языках, что очень странно.
Я не хочу писать такую программу, я хочу найти готовую.
---------- Добавлено 09.06.2017 в 09:30 ----------
Что-то нашёл...
https://unix.stackexchange.com/questions/11128/diff-within-a-line
Как мне это нравится :)---------- Добавлено 09.06.2017 в 09:43 ----------
Возможно, поможет оформление SQL-запросов подобным способом, которым пользусь я (в PHP):
То есть, форматировать, подобно коду. Выборки, условия и т.п. в разных строках.
P.S. Еще есть утилита diff3, которой я пользуюсь. Она умеет находить различия не на уровне строк, а на уровне части строк внутри строк. Очень удобно. Особенно радует возможность интеграции в файловый менеджер Krusader и Программу KdeSvn.
Точнее, я пользуюсь kdiff3, GUI-версией.
Использую meld, можно править оба файла прямо в нем и видеть изменения. Это ОЧЕНЬ удобно когда нужно слить две версии файла, когда часть кода нужно взять из одного файла, а часть с другого.
Или править во внешнем редакторе и не закрывая meld перечитывать актуальные версии файлов и видеть изменения.
Для винды есть winmerge
Отлично, мне это тоже нравится. Всё мелкое, компилится махом.
diff3 в портах как
textproc/diffutils
meld как
textproc/meld
Параллельно поставил на XP. Разбираюсь.
Всё-таки meld часто лажает. Не синхронизируется, выдаёт кашу.
wdiff намного точнее, чётко указывает, что изменилось, и даже пробелы/табуляция с толку не сбивают.
Пользуйтесь git.