powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Первую буква из поля
21 сообщений из 21, страница 1 из 1
Первую буква из поля
    #32183754
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Например у меня есть 3 поля, Фамилие, Имя иОтчество
Кто подаскажет как мне правильно написать запрос что бы он из первого поля брал Фамилию , а из 2-го и 3-его брал первые буквы, что бы получились инициалы.
Select Фамилия+ ' '+"буква из имени"+'.'+",буква из отчества" from FIO
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183762
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первую букву можно получить через Left([ИмяПоля],1). Хотя, вместо запятой может быть точка с запятой... Попробуй сам. А дальше уже комбинируй Фамилию с буквами и точками после энтих инициалов...
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183771
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, все получилось
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183793
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только если у тебя будет пустое (Null) Имя или отчество все твое выражение станет Null.
Лучше использовать конструкцию типа
"Фамилия"&(" ." +"Имя") & (" ." +"Отчество")
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183816
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виктор, конечно, прав, хотя тоже не до конца проснулся :)

Перевожу Сенина Виктора:
"Фамилия" & ("ПерваяБукваИмени" + ". ") & ("ПерваяБукваОтчества" + ". ")

Расшифровываю:
Если Имени или Отчества нет (Null), то появится только то, что есть и при этом ненужных точек после отсутствующего имени (?) или отчества не появится... Правда, если имя отсутствует, то Отчество станет его именем :)
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183822
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нуф-нуфу - спасибо за перевод :), действительно еще сплю.
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183828
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что то не получается по второму варианту
В первую очередь ругается на &
затем меняю на +
Потом ругается на "." меняю двойные ковычки на одинарные
и в итоге выводит фимилию, имя и отчество, целиком, а не первые буквы с имени и отчества.
Пишу все это в query Analyzer
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183853
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вы скиньте сюды часть вашего запроса (где SELECT) и, возможно, мы ченить еще подскажем...
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183875
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ок вот запрос
select "Фамилия" +("Имя" + '.') + ("Отчество"+ '.')from table1 where id =5
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183933
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>select "Фамилия" +("Имя" + '.') + ("Отчество"+ '.')from table1 where id =5
Ой... Ой-йой-йой. Шо это было? :)

Надоть так:
SELECT [Фамилия] & " " & (Left([Имя],1)+".") & (Left([Отчество],1)+".") AS ПсевдонимПоля from table1 where id =5

Вместо того, что в квадратных скобках подставь соответствующие имена полей из своей таблицы... Должно работать, ибо прям уже создал у себя таблицу, забабацал запрос и усе получилось :)
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183981
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не понимаю в чем дело пишу этот запрос в Query Analyzer
и выдает ошибку
Server: Msg 207, Level 16, State 3, Line 1
Invalid column name ' '.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name '.'.
Server: Msg 207, Level 16, State 1, Line 1
Invalid column name '.'.
Подставил конечно название таблицы и поля свои
Вместо "" постаил одинарные ковычки, начинает ругаться на &
Invalid operator for data type. Operator equals boolean AND, type equals varchar.
Меняю на +
тогда выводит верно Фамилия И.О, но если вдруг нет Имени в поле, то выводит значение NULL о чем говорилось выше.

SELECT [Фамилия] + '' + (Left([Имя],1)+'.') + (Left([Отчество],1)+'.') AS FIO from table1 where id =5
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183987
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ты уверен что для конкатенции в MS SQL может используеться & и + ?
Я давал пример для Акеса (ты не указывал тип проекта).
...
Рейтинг: 0 / 0
Первую буква из поля
    #32183991
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ADP
база на Sql2000
проект на аксесе 2002
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184075
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Больше нет никаких предложений???
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184083
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Больше нет никаких предложений???

Есть. Одному из нас залезть в справку ибо ни ты ни я не знаем ответа.
А теперь вопрос: Кто из нас полезет в справку?
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184092
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну ты с юмором :-)))))
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184138
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, вы (мы), блин, даете
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184150
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну я (ты, он, она, мы, вы,они), блин, использовал бы "+" и Set AnsiNulls (или как там эту опцию зовут, установка которой возвращает в ХП пустую строку, если в данных есть Null'ы ).
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184188
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а вот и решение столь долгих обсуждений
SELECT Фамилия +' '+isnull(left(Имя,1),'.')+'.'+isnull(left(Отчество,1),'.')+'.' AS FIO
from Table1
where Code =1
естественно если поле ИМЯ пусто, то возвращает так
Например Иванов . .И
а если есть то Иванов И.И
:-))))Всем спасибо кто подключился к моему вопросу
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184190
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для Sql
SELECT IsNull([Фамилия],'') + '' + isnull((Left([Имя],1)+'.'),'') + isnull((Left([Отчество],1)+'.'),'') AS FIO from table1 where id =5
...
Рейтинг: 0 / 0
Первую буква из поля
    #32184197
Dmit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а Еще лучше убрать в
isnull(left(Имя,1),'.') и в snull(left(Отчество,1),'.')
точки в ковычках, Так красивее :-)))
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Первую буква из поля
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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