|
|
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Добрый день, вопрос следующий. Наверняка где-то освещалось, но не нашел. Есть Таблица, которая содержит параметры Код: plsql 1. 2. И есть вторая таблица, в которую помещены личные счета, являющиеся закрытыми. Код: plsql 1. НЛС из таблицы 2 присутствует так же в общей таблице table1. Как сделать так, чтобы была проверка на случай попадания в таблицу2? То есть если я имею для ячейки t1.serial две записи t1.nls,хочется на выходе увидеть только ту, которая не попадет в таблицу2. Так же если в таблице2 нет данных, вывести просто значение из таблицы1. Заранее спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 15:17 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 15:29 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Dshedoo, Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 15:33 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Это не поможет, вот запрос, который выбирает НЛС, по которым был возврат. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Результатпустое поле По данному оборудованию не было возврата А вот запрос, который выдает всю инфу по оборудованию. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. Выдача клиенту229010015824 Как соединить таблицы так, чтобы не потерять проверку и в тот же момент получить записи, для которых первый запрос возвращает 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 15:45 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
ReflectorДобрый день, вопрос следующий. Наверняка где-то освещалось, но не нашел. Есть Таблица, которая содержит параметры Код: plsql 1. 2. И есть вторая таблица, в которую помещены личные счета, являющиеся закрытыми. Код: plsql 1. НЛС из таблицы 2 присутствует так же в общей таблице table1. Как сделать так, чтобы была проверка на случай попадания в таблицу2? То есть если я имею для ячейки t1.serial две записи t1.nls,хочется на выходе увидеть только ту, которая не попадет в таблицу2. Так же если в таблице2 нет данных, вывести просто значение из таблицы1. Заранее спасибо) а если в таблице t1 2 записи и в таблице t2 2 записи с t1.nls = t2.nls что надо вывести 1 запись или 2? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:21 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, Уважаемый. вам нужно использовать table1 Minus table2 а результат вставить как подзапрос в вашу выборку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:22 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Если в таблице t1 две записи, у них явно разный t1.serial. В таблице t2 не может быть 2 записи с t2.nls одинаковым. Если в таблице t2 присутствует запись, которая попадает в t1,такую следует исключить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:27 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. Мне этот кусок вообще не понятен. Почему не заменить его на Код: plsql 1. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:37 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, тогда пользуйте один из предложенных Dshedoo вариантов как самый быстрый (мне например лень разбираться =) ) Minus Вам не подойдет из-за разных возвращаемых колонок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:39 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
DshedooReflector, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. Мне этот кусок вообще не понятен. Почему не заменить его на Код: plsql 1. ? потому что not in - переводят как КРОМЕ а in - переводят как ТОЛЬКО ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:41 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Dshedoo, Сори - недосмотрел ... тогда вместо Код: plsql 1. 2. 3. 4. 5. 6. я бы предложил тогда t1.id in (4,10) - но тут данные видеть надо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:48 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Согласен, с нулом может быть косяк (хотя какой нулл в типе). Код: plsql 1. хотя можно и извратиться 1 условием: Код: plsql 1. В смысле, зачем писать 2 раза минус, когда можно 1 раз плюс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:49 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Dshedoo, Тут вы совершенно правы! Это ни к чему не привело, спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:50 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, К сожалению, там проверяются совсем отличные условия. в t1 ищу оборудование, которое у клиента(type=1, к примеру) и хочу в t2 проверить, был ли по нему акт(type=4). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 16:54 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Переписал так, как указывал Dshedoo. Все равно не работает, не пойму, почему. Должно выдать 1 строку, получаю 0 rows. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. Кто-нибудь может указать ошибку? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 17:05 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
DshedooReflector, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. Мне этот кусок вообще не понятен. Почему не заменить его на Код: plsql 1. ? еще раз объсняю, надо СМОТРЕТЬ в ДАННЫЕ. Если поле RMS_.Act.id - primary key то переписать на Ваш вариант можно если НЕТ, а похоже что нет, то если перевести на русский звучит 1. "не рассматривать акты в которых не было типа 4 и 10" (Например просрочка) 2. "рассматривать строки с типом 4 и 10" (т.е. для других типов актов условие применяться не будет ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 17:47 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, А Давай ты напишешь что есть table1 и table2 c ярко выраженной nls в обоих ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 17:52 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Поле ACT_Id-primary. Вопрос в том, как сделать так, чтобы был вывод всего из table1, но при это в учет не попало то, что попало в table2. Во втором запросе, очевидно, Act_id primary не выступает. Но, как мне кажется, это там и не нужно. В table2 достаточно увидеть t2.nls,дабы потом его сравнить со значениями table1. Если есть в t2,отбросить их. Если нет-вывести. Я понимаю, что задача тупая и решается, возможно, на пальцах,но никак допереть не могу:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 20:15 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, А что если сделать left join table 2 t2 on t2.nls=t1.nls where t2.nls in ( select выбора актов возврата ) OR t2.nls is null ? Возможности проверить нет, пока что:( Завтра проверю теорию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 20:34 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Насчет ярко выраженных НЛС:) в t1 это 'НЛС 121212121212'. Но я их конверчу. в t2 это '121212121212'. Они совпадают после конверта, инфа 100:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.05.2017, 20:59 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. У вас экзист никак не связан с вышестоящим запросом. Более того, если экзист вернёт null, то с чем бы вы его не сравнивали, всегда будет FALSE. Нужно слегка переписать 1ый запрос и привязать его ко 2ому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2017, 09:07 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
Reflector, Я так понял что table1 это Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. где есть поле NLS_ - допустим это и было t1.nls Но вот что вы считаете table2 и где у нее t2.nls - я не понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2017, 10:10 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Соединял exist я с помощью Код: plsql 1. . Или этого не достаточно. Client_code-это и есть НЛС. В нижней части идет его выборка, чтобы он не присутствовал в пуле. Код: plsql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2017, 11:02 |
|
||
|
Выборка исключенного под запросом значения
|
|||
|---|---|---|---|
|
#18+
ReflectorMaximaXXL, А что если сделать left join table 2 t2 on t2.nls=t1.nls where t2.nls in ( select выбора актов возврата ) OR t2.nls is null ? Возможности проверить нет, пока что:( Завтра проверю теорию Все, данный вариант сработал. Пересобрал конструкцию t2,пару связок убрали добавил,и все:) Спасибо всем, в частности Dshedoo и, конечно же, MaximaXXL!!!:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.05.2017, 11:29 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39448852&tid=1885984]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
171ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 491ms |

| 0 / 0 |
