Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

нужна помощь

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Alenchik



Зарегистрирован: 03.10.2007
Сообщения: 4

СообщениеДобавлено: Ср Окт 03 2007 14:04    Заголовок сообщения: нужна помощь Ответить с цитатой

Добрый день!
Помогите, пожалуйста, есть поле в таблице с фамилией , нужно в другом поле сделать фамилию в дательном падеже, например
Ивановский сделать Ивановскому
какая функция подойдет чтобы заменить две последние буквы на другие?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Bjorndalen



Зарегистрирован: 18.07.2007
Сообщения: 29

СообщениеДобавлено: Чт Окт 04 2007 07:04    Заголовок сообщения: Ответить с цитатой

Цитата:
Добрый день!
Помогите, пожалуйста, есть поле в таблице с фамилией , нужно в другом поле сделать фамилию в дательном падеже, например
Ивановский сделать Ивановскому
какая функция подойдет чтобы заменить две последние буквы на другие?

Что значит какая функция? с помощью чего построена таблица?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Alenchik



Зарегистрирован: 03.10.2007
Сообщения: 4

СообщениеДобавлено: Чт Окт 04 2007 08:38    Заголовок сообщения: Ответить с цитатой

таблица екселевская, делать можно на vba , но у меня с ним не очень, делаю в фоксе, примерно так
update tab1 set komu=substr(fam,1,length(fam)-2)+'ому' where fam like '%кий'

где поле komu - фамилия в дательном падеже
а поле fam - просто фамилия

что-то не получается именно функция length (определение длины), может я не так ее пишу?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Bjorndalen



Зарегистрирован: 18.07.2007
Сообщения: 29

СообщениеДобавлено: Чт Окт 04 2007 09:03    Заголовок сообщения: Ответить с цитатой

А почему бы не написанть так:
Код:

=ЕСЛИ(ЕОШ(НАЙТИ("кий";A1;1));A1;ПОДСТАВИТЬ(A1;"кий";"ому"))

здесь A1 - номер ячейки с исходной фамилией.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
grf



Зарегистрирован: 05.04.2005
Сообщения: 1242
Откуда: Москва

СообщениеДобавлено: Чт Окт 04 2007 09:24    Заголовок сообщения: Ответить с цитатой

оставьте глупую затею.

Тут с языком разобраться не могут, а вы с фамилией хотите.

Фамилии - вещь непредсказуемая, в принципе, а ее склонение по падежам - в принципе вдвойне. Тут человеческая логика порой отдыхает, а вы комп присобачить пытаетесь Laughing



Цитата:
=ЕСЛИ(ЕОШ(НАЙТИ("кий";A1;1));A1;ПОДСТАВИТЬ(A1;"кий";"ому"))


И что вы сделаете с фамилиями

Закийман или Лизкийский.

А как быть и Ивановым, Петровым, Лисицыным, Поцом, Бажал, Кирюхиной, Винн.

И думай, дать Винн или Винну?

Список можно продолжать на сколько фантазии хватит. А она - безграична.

Wink
_________________
Errare humanum est
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Alenchik



Зарегистрирован: 03.10.2007
Сообщения: 4

СообщениеДобавлено: Чт Окт 04 2007 09:27    Заголовок сообщения: Ответить с цитатой

всем спасибо большое, у меня получилось, функция не length а len, в итоге запрос
update tab1 set komu=substr(fam,1,(len(alltrim(fam))-2))+'ому' where qqq like 'кий'

Bjorndalen спасибо за ответ, это я так понимаю в екселе?
просто там кроме поля фамилии еще много чего надо было изменить и мне было проще сделать в фоксе одной програмкой, а функцию len я нашла в VBA.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Alenchik



Зарегистрирован: 03.10.2007
Сообщения: 4

СообщениеДобавлено: Чт Окт 04 2007 09:32    Заголовок сообщения: Ответить с цитатой

ответ grf,
ну почему вы так котегорично, есть много случаев когда это необходимо, а на разные варианты фамилий есть разные примеры обработки. что совсем уж не подкакие параметры не подходит тогда уж ручками,
вообщем кто ищет -тот найдет
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
grf



Зарегистрирован: 05.04.2005
Сообщения: 1242
Откуда: Москва

СообщениеДобавлено: Чт Окт 04 2007 09:39    Заголовок сообщения: Ответить с цитатой

Просто удачи, и все!!!!!


Но лично я не хотел бы учавствовать в разборе полетов, по поводу, почему в банке завернули гендиректора, с договором, в котором есть обращения:

Господин Иванов...
Господину Ивановому...

Удачи!!!


Wink
_________________
Errare humanum est


Последний раз редактировалось: grf (Чт Окт 04 2007 12:57), всего редактировалось 1 раз
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Bjorndalen



Зарегистрирован: 18.07.2007
Сообщения: 29

СообщениеДобавлено: Чт Окт 04 2007 10:34    Заголовок сообщения: Ответить с цитатой

Ответ grf:
Откуда же такая склонность все усложнять?
Вот когда существует прблема со склонением всех возможных фамилий, тогда и следует ее решать!
Тем более запрограммировать все тонкости русского языка в принципе невозможно каким-то универсальным способом Но в общем случае можно обойтсь следующими правилами: При слонении к дательному падежу фамилии, заканчивающиеся на -ов, -ев, -ёв, ин - приобретают окончание -у; на -ова, -ева, -ёва, -ина - "а" заменяем на "-ой"; на -ий - меняем - "ий" на "ому"; на "-ая" меняем "ая" на "ой". Остальные фамилии можно для простоты считать несклоняемыми, коими они, в большинстве своём, и являются!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Mytilus Galloprovincialis



Зарегистрирован: 30.08.2005
Сообщения: 358
Откуда: откуда все люди родятся

СообщениеДобавлено: Пт Окт 05 2007 05:02    Заголовок сообщения: Ответить с цитатой

Главное - обратить внимание на неславянские фамилии. Потому что мужские склоняются, а женские - нет: Ивану Раппопорту и Марии Раппопорт.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
grf



Зарегистрирован: 05.04.2005
Сообщения: 1242
Откуда: Москва

СообщениеДобавлено: Пт Окт 05 2007 08:42    Заголовок сообщения: Ответить с цитатой

to Bjorndalen

Посмотри на мой пост выше!!!


Я же сказал, удачи! Устроит Вас Ваш вариант, вперед.
Ситуации в жизни бывают разные, обстоятельства тоже.
откуда я знаю что вы там делаете.
Может список контактов у себя в аське склоняете, так вам пофигу, вообще, что там на выходе получится.

А если занимаетесь серьезными делами и соответствующая ответственность, то лучше не иметь проги вообще, чем иметь такую, которая может выдать неправильный результат, именно выдать, если б еще споткнулась, пол беды, выдать НЕВЕРНЫЙ результат.

Выше озвученное, конечно, IMHO, проверенное только на своем опыте.

Удачи!!!

Wink
_________________
Errare humanum est
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Bjorndalen



Зарегистрирован: 18.07.2007
Сообщения: 29

СообщениеДобавлено: Пт Окт 05 2007 09:08    Заголовок сообщения: Ответить с цитатой

И Вам удачи grf !!!
Спасибо за критику, она бывает очень полезна! ))
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...