|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Выражение2: Mid([MAIN]![MARKA];Len([MAIN]![MARKA])-2;1) В запросе есть такое выражение. Исправно работает - выдает результат. Задача - отобрать все строки, где оно не является точкой "." Никак не могу сообразить - как условие написать, как не извращаюсь - Несоответствие типов данных...... Как правильно написать здесь условие? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 13:11 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Serg197311, Код: plaintext 1.
если нужно что бы не оканчивалось на "." используем функцию right Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 13:27 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Serg197311Задача - отобрать все строки, где оно не является точкой "." WHERE Mid([MAIN]![MARKA];Len([MAIN]![MARKA])-2;1) <>"." или так: WHERE [MAIN]![MARKA] Like "*[!.]??" А что вы указываете, если получаете "Несоответствие типов данных"? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:17 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Если бы все было так просто.... Я таки не совсем идиот, кавычки конечно пробовал.... Фигвам короче Код: sql 1. 2. 3. 4.
Вот полный текст запроса... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:19 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Кривцов Анатолий WHERE Mid([MAIN]![MARKA];Len([MAIN]![MARKA])-2;1) <>"." - пробовал, посылает по тому же адресу Кривцов Анатолийили так: WHERE [MAIN]![MARKA] Like "*[!.]??" А что вы указываете, если получаете "Несоответствие типов данных"? и так посылает....... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:21 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Кривцов Анатолий А что вы указываете, если получаете "Несоответствие типов данных"? Ну до сих пор я пытался привести типы данных в соответствие И до сих пор у меня это получалось..... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:22 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Serg197311, Еще: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:33 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Serg197311 Код: sql 1.
Вот полный текст запроса...жжоте не по-деЦЦки... Функция значение какого типа возвращает? И с чем вы сравниваете тип Long, товарищ? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:34 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
а, пардон... Сам сижЮ и туплЮ... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 14:36 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
__MichelleSerg197311, Еще: Код: sql 1.
Я прям в шоке..... Работает..... Спасибо огромное!!!! Но вопрос остался..... почему же Mid(), который тоже стринг возвращает, не прокатывал????? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:08 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Serg197311Но вопрос остался..... почему же Mid(), который тоже стринг возвращает, не прокатывал????? У вас есть пустые поля "MARKA" или с текстом менее 3-х символов? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:19 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Кривцов АнатолийSerg197311Но вопрос остался..... почему же Mid(), который тоже стринг возвращает, не прокатывал????? У вас есть пустые поля "MARKA" или с текстом менее 3-х символов? В таблице вообще есть. В записях отобранных запросом без этого условия - нет. Ключевая непонятка для меня - если убрать это условие и оставить просто выражение Mid(....), то запрос отрабатывает, и выводится то что надо.... А вот как на него условие ставишь - несоответствие типов..... Да какое там блин несоответствие то быть может? стринг и стринг... или я чего то не догоняю.... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:28 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Посмотрите этот скрин и ответьте на вопрос: каково значение 2 аргумента функции при длине строки 0-2 и будет ли функция работать,если аргумент <=0 (Рекомендую применять тривиальный LIKE) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:41 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
sdkuПосмотрите этот скрин и ответьте на вопрос: каково значение 2 аргумента функции при длине строки 0-2 и будет ли функция работать,если аргумент <=0 (Рекомендую применять тривиальный LIKE) Like в той конструкции тоже не работал - пробовал ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:46 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Прогер_самоучка...а, пардон... Сам сижЮ и туплЮ.... Да ладно. С таким то количеством полезных сообщений? Наверное как и я частенько просто прикалываешься прикалываетесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:47 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
sdkuПосмотрите этот скрин и ответьте на вопрос: каково значение 2 аргумента функции при длине строки 0-2 и будет ли функция работать,если аргумент <=0 Почитайте все вышеописанное и пожалуйста ответьте на вопрос - почему конструкция с left-right работает, а конструкция с mid - нет ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 15:51 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Serg197311В таблице вообще Null есть. В записях отобранных запросом без этого условия - нет. У вас в WHERE это условие указано первым. Попробуйте указать его последним. Или вместо Len([MAIN]![MARKA]) просто указать любое положительное число. Я это все к чему - Len(Null) вернет Null и он попадает в числовой аргумент Mid. Это может быть причиной несоответствия. В варианте с Left(Right(...)) такой ситуации нет. Serg197311Ключевая непонятка для меня - если убрать это условие и оставить просто выражение Mid(....), то запрос отрабатывает, и выводится то что надо.... Не понял. Какой "просто Mid(....)" вместо какого усовия? Не просто просто Mid-а? Serg197311А вот как на него условие ставишь - несоответствие типов..... Да какое там блин несоответствие то быть может? стринг и стринг... или я чего то не догоняю.... Вообще-то Mid, Left, Right принимают и возвращают Null, а вот Mid$, Left$, Right$ - только строку. ЗЫ. ORDER BY MAIN.CODE, MAIN.CODE; - одно и то же поле дважды, это описка? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 16:32 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Пользовательская функция: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8.
и её применение Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 16:56 |
|
Несоответствие типов данных
|
|||
---|---|---|---|
#18+
Кривцов АнатолийSerg197311В таблице вообще Null есть. В записях отобранных запросом без этого условия - нет. У вас в WHERE это условие указано первым. Попробуйте указать его последним. Или вместо Len([MAIN]![MARKA]) просто указать любое положительное число. Я это все к чему - Len(Null) вернет Null и он попадает в числовой аргумент Mid. Это может быть причиной несоответствия. В варианте с Left(Right(...)) такой ситуации нет. воооот.... Скорее всего, завтра проверю Кривцов АнатолийSerg197311Ключевая непонятка для меня - если убрать это условие и оставить просто выражение Mid(....), то запрос отрабатывает, и выводится то что надо.... Не понял. Какой "просто Mid(....)" вместо какого усовия? Не просто просто Mid-а? Если просто вывести выражение Mid([MAIN]![MARKA];Len([MAIN]![MARKA])-2;1) без условия, то запрос отрабатывает. Завтра посмотрю, не было ли там пустых значений в эотм столбце Кривцов АнатолийЗЫ. ORDER BY MAIN.CODE, MAIN.CODE; - одно и то же поле дважды, это описка? Ошибка конечно - уже исправил ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2018, 17:45 |
|
|
start [/forum/topic.php?fid=45&msg=39750193&tid=1610954]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 152ms |
0 / 0 |