На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Pr0[)!9Y, Akina, JoeUser
Страницы: (11) « Первая ... 9 10 [11]  все  ( Перейти к последнему сообщению )  
> Помогите с запросом
    Цитата Akina @
    MAX(field) - MIN(field) AS delta

    Гениально!!!
    "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
      Где найти описание шаблонов при PATINDEX ?

      У меня такая строка: "Отгрузка апрель 2018 - 50%" нужно вычленить проценты. Проценты могут быть от 0 до 100, т.е. как 1 символ, так и 3. Я думаю через PATINDEX найти вхождение этих чисел от первого пробела с права до %. Какой шаблон мне применить при поиске?

      Добавлено
      Можно так: REVERSE( SUBSTRING(REVERSE('Отгрузка май 2018 100%'),2, CHARINDEX(' ',REVERSE('Отгрузка май 2018 100%') )-1 ) )
      Но это коряво как-то. :wacko:
      "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
        А ещё лучше взять как-то последнюю группу цифр, т.е. варианты могут быть в теории - 50%, -50 %, - 50 % и надо как-то взять справа от первой цифры до последней цифры следовавшей подряд
        "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
          Вот так сделал, но это ещё корявее. Ищем первую цифру. Берем от первой цифры до конца. Идем первую нецифру в найденной подстроке.
          REVERSE(substring(REVERSE(TaskRequest.FileAs), PatIndex('%[0-9]%', REVERSE(TaskRequest.FileAs)), PatIndex('%[^0-9]%', substring(REVERSE(TaskRequest.FileAs), PatIndex('%[0-9]%', REVERSE(TaskRequest.FileAs)), len(TaskRequest.FileAs)))-1))

          Как-то можно оптимизировать?
          Сообщение отредактировано: ^D^ima -
          "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
            Цитата ^D^ima @
            Где найти описание шаблонов при PATINDEX ?

            https://docs.microsoft.com/ru-ru/sql/t-sql/...sql-server-2017

            Цитата ^D^ima @
            варианты могут быть в теории - 50%, -50 %, - 50 % и надо как-то взять справа от первой цифры до последней цифры следовавшей подряд


            pos = charindex(str, '%')
            str = left(str, pos-1)
            str = trim(str)
            str1 = reverse(str)
            pos = patindex(str1, '[^0-9]')
            str = right(str, pos-1)
            Есть претензии ко мне как к модератору? читайте Правила, разделы 5 и 6, и действуйте соответственно.
            Есть претензии ко мне как к участнику? да ради бога.
            Не нравятся мои ответы? не читайте их.
            В общем, берегите себя. Нервные клетки не восстанавливаются.
              Спасибо.

              Как мне узнать каким ключом связаны 2 таблицы?

              Делаю зависимость через Studio и не понимаю:

              https://yadi.sk/i/qOGNrzvH3ZJnkK

              Мне нужно Budget с Project связать
              "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
                Database Diagrams в SSMS. Или запросить скрипт создания - там будет и FK.
                Есть претензии ко мне как к модератору? читайте Правила, разделы 5 и 6, и действуйте соответственно.
                Есть претензии ко мне как к участнику? да ради бога.
                Не нравятся мои ответы? не читайте их.
                В общем, берегите себя. Нервные клетки не восстанавливаются.
                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script Execution time: 0,0884 ]   [ 15 queries used ]   [ Generated: 17.08.18, 16:48 GMT ]