Поиск в таблице по приоритетам

  1. 5 г. назад

    Есть таблица с полями Поле1, Поле2, Поле3, Поле4

    Нужно найти определенную строку на равенство:
    1 - в начале по полям 1, 2, 3
    2 - если не найдено по полям 1, 2
    3 - если не найдено по полям 1

    Пока приходит только в голову последовательный поиск по структуре отбора и НайтиСтроки. Есть другие варианты поиска?

    Ответы: (5) (7) (9)
  2. Что за работу нашол? скока оплата?!

    Ответы: (2)
  3. NewTesla Что за работу нашол? скока оплата?!

    1000 руб печатную форму сделать. Сижу 4й день уже.

    Ответы: (4)
  4. В честь этого события дарб тебе стих!

    Баба Сися улыбалась яблокам
    Мохноносый Дед обожал шапочки
    Потому и жили они и радовались зябликам
    Пролетавшим мимо окон утром с гарканьем

  5. Hans 1000 руб печатную форму сделать. Сижу 4й день уже.

    че за шляпа давай я те по ЕРП лучше дам заказчиков = франь, тк я в ерп не секу то сам взять хз как их!

    УРА!!!!!!!!!!!!

    Но скоро изуч

  6. Hans Есть таблица с полями Поле1, Поле2, Поле3, Поле4

    Нужно найти определенную строку на равенство:
    1 - в начале по полям 1, 2, 3
    2 - если не найдено по полям 1, 2
    3 - если не найдено по полям 1

    Пока приходит только в голову последовательный поиск по структуре отбора и НайтиСтроки. Есть другие варианты поиска?

    * с полями это со строками или колонками?

    Ответы: (6)
  7. NewTesla * с полями это со строками или колонками?

    Колонки. В которых есть определенные значения, мне нужно найти строки.

  8. (0) Менеджер временных таблиц + запрос.

    Ответы: (9)
  9. Запросом можно!

    делаем сразу по всем пунктам потом перебираем и норм)

  10. Фёдор14 (0) Менеджер временных таблиц + запрос.

    Напиши запрос. Три запроса делать через объединение?

    Ответы: (10) (14)
  11. Hans Напиши запрос. Три запроса делать через объединение?

    да, можно обьединение!

    Но проще левое соединение

    1 таблица = по трем сразу

    вторая по двум условиям

    и третья по одному

    Получим

    Попик = Красный Волосатый Ароматный
    Козлик = Мохноногий Белый NULL
    Сисик = Выпуклый NULL NULL

    И потом отбором три таблицы получаем когда нам нада
    УРА!!!!!!!!!!!!

  12. а щас

    подумать еще нада

  13. Да, это лучше объединением тогда получим как в п 10 данные, левым соединением чето сложнее буде

  14. ВЫБРАТЬ ПЕРВЫЕ 1
    Поле1, Поле2, Поле3, Поле4
    ИЗ (
    ВЫБРАТЬ Поле1, Поле2, Поле3, Поле4, 1 КАК Приоритет
    ИЗ Таблица
    ГДЕ
    Поле1 = Поле2 = Поле3

    ОБЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ Поле1, Поле2, Поле3, Поле4, 2
    ИЗ Таблица
    ГДЕ
    Поле1 = Поле2

    ОБЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ Поле1, Поле2, Поле3, Поле4, 3
    ИЗ Таблица
    ГДЕ
    <тут я не понял что с чем сравнивать, допиши сам>

    УПОРЯДОЧИТЬ ПО
    Приоритет ВОЗР)

  15. Hans Напиши запрос. Три запроса делать через объединение?

    Выбор
    когда (поле1 = &поле1) и (поле2 = &поле2) и (поле3 = &поле3) тогда 3
    когда (поле1 = &поле1) и (поле2 = &поле2) тогда 2
    когда (поле1 = &поле1) тогда 1
    иначе 0 конец как Приоритет

    И упорядочивание по этому полю

  16. 24.09.2019 19:25:46 отредактировано Hans

    Так надо. Ну вобщем понятно. Либо кака я через поиск в ТЗ, либо через запрос.

    ВЫБРАТЬ ПЕРВЫЕ 1
    Поле1, Поле2, Поле3, Поле4
    ИЗ (
    ВЫБРАТЬ Поле1, Поле2, Поле3, Поле4, 1 КАК Приоритет
    ИЗ Таблица
    ГДЕ
    Поле1 = &параметр1 И Поле2 = &параметр2 и Поле3 = &параметр3

    ОБЪЕДИНИТЬ ВСЕ

    ВЫБРАТЬ ПЕРВЫЕ 1
    Поле1, Поле2, Поле3, Поле4
    ИЗ (
    ВЫБРАТЬ Поле1, Поле2, Поле3, Поле4, 2 КАК Приоритет
    ИЗ Таблица
    ГДЕ
    Поле1 = &параметр1 И Поле2 = &параметр2

или зарегистрируйтесь чтобы ответить!