Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.02.2008, 01:01
fluxion fluxion вне форума
Прохожий
 
Регистрация: 20.12.2007
Сообщения: 16
Репутация: 10
Вопрос SQL запрос

Здравствуйте!
Вопрос 1: В БД есть столбец (Adres), в котором идет запись в виде 'Ленина Дом.29 Кв.42' Можно ли преобразовать такие строки sql-запросом в вид 'Ленина-29-42' ?

Вопрос 2: В БД есть два столбца (Mounth),(Year), в которых идет запись в виде 'Январь' , '2008'. Можно ли соеденить эти данные и получить в виде '012008' и перенести,допустип в третий пустой столбец (Itog)?

ЗЫ: Delphi 7, MSSQL
Ответить с цитированием
  #2  
Старый 27.02.2008, 12:24
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Для 2:
Код:
SELECT     CASE month 
WHEN 'Январь' THEN '01' 
WHEN 'Февраль' THEN '02' 
...
END + year AS Itog
FROM         Table_1
ORDER BY Itog
Ответить с цитированием
  #3  
Старый 27.02.2008, 14:01
Аватар для Appolon
Appolon Appolon вне форума
Новичок
 
Регистрация: 10.01.2008
Адрес: гЕйск
Сообщения: 76
Репутация: 16
По умолчанию

Цитата:
Сообщение от fluxion
Вопрос 1: В БД есть столбец (Adres), в котором идет запись в виде 'Ленина Дом.29 Кв.42' Можно ли преобразовать такие строки sql-запросом в вид 'Ленина-29-42' ?
Зы, запросом!
Код:
update TABLE_1 set Adres=REPLACE(Adres,' Дом.','-')
update TABLE_1 set Adres=REPLACE(Adres,' Кв.','-')
Ответить с цитированием
  #4  
Старый 01.03.2008, 03:16
fluxion fluxion вне форума
Прохожий
 
Регистрация: 20.12.2007
Сообщения: 16
Репутация: 10
По умолчанию

AlexSku
Код:
SELECT     CASE month 
WHEN 'Январь' THEN '01' 
WHEN 'Февраль' THEN '02' 
...
END + year AS Itog
FROM         Table_1
ORDER BY Itog

Можно ли этот запрос сделать командой UPDATE ?
Ответить с цитированием
  #5  
Старый 03.03.2008, 12:35
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Код:
UPDATE Temp1
SET	Itog = CASE month 
	WHEN 'Январь' THEN '01' 
	WHEN 'Февраль' THEN '02'
              ...
	END + year
Ответить с цитированием
  #6  
Старый 03.03.2008, 14:14
fluxion fluxion вне форума
Прохожий
 
Регистрация: 20.12.2007
Сообщения: 16
Репутация: 10
По умолчанию

Цитата:
Сообщение от Appolon
Зы, запросом!
Код:
update TABLE_1 set Adres=REPLACE(Adres,' Дом.','-')
update TABLE_1 set Adres=REPLACE(Adres,' Кв.','-')

Спасибо за ответ. Но у меня след. проблема. Получаются некоторые записи как Ленина -3-1 -55. Как мне исправить такие записи, чтобы преобразовать в след. вид:Ленина -3/1 -55. Можно это сделать командой update ?

Последний раз редактировалось fluxion, 03.03.2008 в 14:17.
Ответить с цитированием
  #7  
Старый 03.03.2008, 14:16
fluxion fluxion вне форума
Прохожий
 
Регистрация: 20.12.2007
Сообщения: 16
Репутация: 10
По умолчанию

Цитата:
Сообщение от AlexSku
Код:
UPDATE Temp1
SET	Itog = CASE month 
	WHEN 'Январь' THEN '01' 
	WHEN 'Февраль' THEN '02'
              ...
	END + year
Благодарю!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:40.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter