|
Отбор строк в запросе имеющих необходимые поля во временной таблице | ☑ | ||
---|---|---|---|---|
0
Aradel3d
15.01.15
✎
08:36
|
Помогите понять как организовать отбор из Таблицы 1, по нескольким полям строк в Таблице 2? Через Условие "Сотрудник НЕ В (Таблица2.Сотрудник) И Дата НЕ В (Таблица2.Дата) И ЧТОТО НЕ В (Таблица2.ЧТОТО), запрос рубит по первому полю Сотрудник. А у него еще N строк, и только некоторые из них мне надо отсекать.
Если не ясно объяснил, вот изначальная проблема: Есть данные, я добавляю свои почти дублируя исходные данные. Теперь мне не нужно выбирать строки к которым я создал свои строки. Добавлять реквизиты или комментарий маркер нельзя. |
|||
1
фобец
15.01.15
✎
08:38
|
Конструкция "Не В (...) " может работать только со списком или массивом. Максимум с перечислением через зпт
|
|||
2
Aradel3d
15.01.15
✎
08:39
|
А там список строк моих модифицированных дублей данных Таблицы 1.
|
|||
3
фобец
15.01.15
✎
08:40
|
+1 вру, еще вложенный запрос типа "не в (выбрать таб1.сотрудник из таб1)"
|
|||
4
Cube
15.01.15
✎
08:40
|
Поиск по строке "как выбрать из таблицы строки, которых нет в второй таблице". Это такой рваный баянище...
|
|||
5
фобец
15.01.15
✎
08:40
|
(2) да пофиг чо там
|
|||
6
KishMish
15.01.15
✎
08:42
|
(0) (1) Конструкция "Не В (...) может работать с вложенным запросом "не в (ВЫБРАТЬ * из Таблица)"
|
|||
7
фобец
15.01.15
✎
08:43
|
(6) не, "выбрать *" если больше одного поля не взлетит
|
|||
8
kosts
15.01.15
✎
08:43
|
(0) >Теперь мне не нужно выбирать строки к которым я создал свои строки.
Зачем решать проблему, когда можно вообщее от нее избавиться, т.е. отсеки эти не нужные строки в тот момент, когда добавляешь свои строки. Это сделать много проще. |
|||
9
kosts
15.01.15
✎
08:44
|
(7) Вроде что то слышал, про то что можно и не одно поле
|
|||
10
фобец
15.01.15
✎
08:45
|
(9) это легко проверяется
|
|||
11
Aradel3d
15.01.15
✎
08:46
|
(8) В момент выполнения алгоритма все ок, только вот на следующий день, строки которые были обработаны, также подпадут под условие и вновь окажутся на экране.
|
|||
12
Aradel3d
15.01.15
✎
08:55
|
Вобщем почитал (4) К таблице 2 добавить поле Исключить (Истина), затем левым соединением прибавить к Таблице 1 Исключить, затем выбрать из полученного массива где ЕСТЬ NULL
|
|||
13
senior
15.01.15
✎
09:00
|
(12) зачем добавлять поле, просто JOIN по нужным полям + условие ГДЕ Табл2.ЛюбоеПоле есть NULL
|
|||
14
ChAlex
15.01.15
✎
09:01
|
а что (Сотрудник,Дата,чточто) В (Выбрать Таблица2.Сотрудник,Таблица2.Дата,Таблица2.Чтото ИЗ Таблица2 Как Таблица) уже запрещено использовать? :)
|
|||
15
senior
15.01.15
✎
09:01
|
(13) *LEFT JOIN
|
|||
16
фобец
15.01.15
✎
09:03
|
(14) енто уже другая конструкция)
|
|||
17
ChAlex
15.01.15
✎
09:14
|
(16) смущает отсутствие "НЕ". Ну так логика отбора то не озвучена (что-то типа). Вот вам конструкция и дальше играйтесь с нужными условиями
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |