powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Какое значение присвоить функции
25 сообщений из 113, страница 3 из 5
Какое значение присвоить функции
    #32409514
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Так работать не будет. Чтобы выдавались все записи, в WHERE должно быть написано либо строковое поле Like "*", либо просто True без названий полей. Та проверка на равенство, которая использована сейчас, такого эффекта не даст никогда.

И кроме того, я не понял, какого типа это поле АБПЛГКд, которое иногда равно числу, а иногда стрингу.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409535
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Пробежался по всему топику, понял, что поле числовое. Если так, то выражение поле="стринг" вообще должно выдавать ошибку. Впрочем, поле Like "стринг" тоже.

Вот вариант, который должен работать:

WHERE iif(isnull(F(0)), true, Т02Аб.АБПЛГКд=F(0));

При этом функция в случае всех записей должна возвращать Null.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409584
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
То есть, В. С. хотел сказать, что для выдачи всех записей надо написать
F(0) = Null ?
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409589
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Так писать не получится, нельзя присваивать функции значение. Но надо, чтобы она возвращала Null.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409657
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Null - к сожалению, тоже присвоенное значение,
а можно присвоить этой функции "ничто".

Как сделать так, чтобы запрос не почуствовал никакого значения функции, вроде бы ее и нет вовсе, и выдал все записи.

Я уже перепробовала много Ваших советов, но все они частично решают описанную мной проблему, т.е. надо вводить или определенный тип даных или определенные значения для поля, т. е. теряется 5 принцип определения программы - массовость.

Я люблю массовость и универсальность.
Буду с интересом ждать Ваших решений, и сама буду "биться" дальше.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409660
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
авторNull - к сожалению, тоже присвоенное значение,
а можно присвоить этой функции "ничто".
Мы говорим о разных вещах. Вы, наверно, программируете недавно. Я говорю, что присвоить функции значение так, как Вы написали, нельзя. Но возвращать значение функция может и должна. Это касается и Null'а, и любого другого значения.

авторКак сделать так, чтобы запрос не почуствовал никакого значения функции, вроде бы ее и нет вовсе, и выдал все записи.
Именно так, как я предложил. Попробовать слабО?

авторБуду с интересом ждать Ваших решений, и сама буду "биться" дальше.
Не надо биться, когда ответ уже найден.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409663
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если присвоить функции значение Null запрос выдаст все записи в которых данно еполе пустое, а не все записи, я уже пробовала :(
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409664
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Какой запрос? Тот, который я предложил?

WHERE iif(isnull(F(0)), true, Т02Аб.АБПЛГКд=F(0));

?
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409667
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, Ваш еще не пробовала, така как не понимаю его смысла :(

Надо все переварить ...
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409668
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч!
разговор, похоже, на разных языках..
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409669
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Объявляется мораторий на все новые варианты, пока ASTARTA не попробует то, что уже предложено.

А то - "все перепробовала, ничего не помогает"...
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409670
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Чтобы понять смысл, достаточно посмотреть в хелпе, что такое iif.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409675
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проверила, помогло.

Функции нужно присвоить Null, тогда запрос выдает все значения

Если же нужно отобрать записи с пустыми значениями данного поля
возникает конфликт. Запрос два раза выдает одинаковый результат - все знаяения. Т. е. остается ма-а-а-а-аленькая условность (не присваивать полю пустых значений), с ней в принципе можно мириться, но, повторяю, это не окончательное решение проблемы ...

Большое всем спасибо, на таком этапе это меня устроит, напишу запрет на ввод пустых значений и вперед.

Если этот топик будет иметь продолжение, с интересом буду за ним следить.
Огромное спасибо.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409676
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Мораторий закончен.

Могу предложить два варианта.

1. Найти какое-нибудь значение, которого в этом поле не бывает.

2. Сделать две функции:

WHERE iif(F1(0), true, Т02Аб.АБПЛГКд=F2(0));

F1 - возвращает True или False в зависимости от того, нужны ли все значения или одно.
F2 - используется только во втором случае и возвращает нужное значение.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409679
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если бы мы могли предугадывать события, и найти "такие значения", где бы мы были. Все было бы, как в притче о соломенном заборе: "Зачем его делать из дерева, если все равно я проживу два дня" :)

Кто знает, что правительству или начальству понадобится в этом поле завтра или через год ...

Все это грустно ...
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409680
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А второй вариант прочитать слабО???
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409682
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На Null я проверяла именно второй вариант
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409685
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но на одной функции, на двух я и сама умею.

Жаль что придется вводить дополнительную функцию, что приведет к замедлению работы программы. Создавая этот топик, я думала что из за моего невежества есть просто какой то "волшебный" подстановочный символ, и все тут. А вышло все до криволинейных несходящихся интегралов второго рода :(


Вот все в жизни так ...

Еще раз всем огромное спасибо.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409686
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Еще вариант.
WHERE cstr(Т02Аб.АБПЛГКд) like F(0);
И тогда функция пусть возвращает либо cstr от числа, либо "*".
Но работать будет медленно.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409687
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Любая конвертация приводит к замедлению, а в строковую величину - вообще ужас, пусть останется предпред и пред последние варианты :)
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409688
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Самое важное для меня уже выяснилось.

Нет такого "волшебного" подстановочного символа, который бы легко решал описанную проблему.

Что-то в "Мелкософте" не додумали до конца.
Они забыли что мир состоит из противоречий. Что программистам придется всю жизнь только то и делать, что совмещать несовместимое.

Придется "своими изобретениями" доделывать то, что не доделали сотни учёных мужей. Каждый подвиг - это чье-то преступление. Так что будем дальше делать подвиги.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409690
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А я бы посмотрел с другой стороны. Майкрософт специально не запрограммировал все, что бывает в мире, чтобы нам было чем зарабатывать на хлеб.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409692
ASTARTA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сколько же Вы заработаете лопатой без ручки.
Из за таких вот "мелочей" возникают серьезные разногласия с клиентами и их заказами.

Это фундаментальное понятие, аксиома.
Когда-то в универе на госэкзамене профессора стали спрашивать элементарные вещи, и все начали "сыпаться". Суть всего что нас окружает, именно в элементарном. С теории вакуума надо начинать

0 = 0

Если смогут обьяснить эту формулу, человечество резко "прыгнет" вперед в своем развитии.

В Access есть много "елементарных" недоделок, да и в других разработках то же самое. Необновляемые запросы на группировку данных например.
Здесь иожно породить еще десятки топиков с "элементарными" проблемами.
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409693
Odess
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Майкрософт специально не запрограммировал все, что бывает в мире, чтобы нам было чем зарабатывать на хлеб.

Абсолютно согласен. Более того, запрограммировать все не сумел даже господь Бог ;-)
Вообще, "ругатели" Майкрософта скорее всего сами никогда не создавали более менее сложные программы. А создавая, никогда бы не были так категоричны. Мой опыт показывает что время на поиск ошибок в программах многократно превышает время на их создание :((

Ну а по сабжу - SQL создавал не Майкрософт и претензии моей соотечественницы (судя по букве i на месте буквы ы) в данном случае не по адресу :-))
...
Рейтинг: 0 / 0
Какое значение присвоить функции
    #32409694
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 ASTARTA:

Все хорошо, со всем готов согласиться, пока дело не доходит до конкретных примеров.

авторНеобновляемые запросы на группировку данных например.
Ну и как их обновлять? Дана таблица ttt:

a b c
1 1 1
1 2 2

Дан запрос select a, min(b), max(c) from ttt group by a:

1 1 2

Ну, сделали мы его обновляемым. Я зашел и исправил все три значения на 0. Что должно произойти в таблице?

===
А уж в том случае, который у нас тут был, когда решение (с двумя функциями) заранее известно, но просто хочется поэстетичнее, - ну где же тут подвиг???
...
Рейтинг: 0 / 0
25 сообщений из 113, страница 3 из 5
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Какое значение присвоить функции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]