Модераторы: Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> sql, работа с полями 
:(
    Опции темы
norov
Дата 29.6.2007, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 6.4.2007
Где: Россия, г. Тверь

Репутация: нет
Всего: нет



есть такой запрос 
Код

select  Pole1 || Pole2
from Table

он  объединяет значение полей, а можно ли разделить значение одного поля?
например существует такая таблица или что-то в этом роде (не важно):

Pole1                     !    Pole2  
------------------------!-------------------
Сергей                  !    12,01,2007
Маша/бугалтер     !    20,08,2006
Люба/менеджер   !    02,02,2007
Тимофей                !    21,03,2007


я вытаскиваю значения  select pole1 from Table where Pole1 like '%/%' только где существует /
мне надо вывести запросом, без изменения значения в таблице, чтоб значение МАША/бугалтер и Люба/менеджер вышло у меня в гриде как просто Маша и Люба, конечно чтоб тамже  показывались и другие значения как Сергей и т.д

постарался вроде понятно описать свою проблему
PM MAIL ICQ   Вверх
Anark1
Дата 29.6.2007, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 622
Регистрация: 15.12.2006
Где: RF -> Moscow

Репутация: нет
Всего: 11



Создаешь вычисляемое поле. И в Grid`e будешь смотреть по нему. Хотя делать так очень неправильно.
Проще сделать изначально два поля (NAME | WORK) , где WORK может быть NULL


--------------------
Enjoy yourself, still you can...;)

user posted image

user posted image
PM MAIL ICQ   Вверх
norov
Дата 29.6.2007, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 6.4.2007
Где: Россия, г. Тверь

Репутация: нет
Всего: нет



Цитата(Anark1 @ 29.6.2007,  11:02)
Создаешь вычисляемое поле. И в Grid`e будешь смотреть по нему. Хотя делать так очень неправильно.
Проще сделать изначально два поля (NAME | WORK) , где WORK может быть NULL

база таблицы и поля были созданны безменя и до меня. мне просто нужно селектом вытащить только нужные данные.
конечно Вы говорите о разных полях это правильно, но теперь мне нужно извернуться и вытащить данные в том что есть
я знаю что можно сделать так: создать дбф и в ней уже апдейтом пройтися по каждой строке которую нужно изменить, но это слишком нудно и как то не хочеться заниматься мартышкиным трудом. 
должен быть способ другой. его не может не быть. как должно быть так чтобы можно было вытащить данные SQL-ом так как мне нужно
PM MAIL ICQ   Вверх
norov
Дата 29.6.2007, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 6.4.2007
Где: Россия, г. Тверь

Репутация: нет
Всего: нет



можно ведь сделать еси значение одного поля2 интежер то при запросе
select pole2-100 from table
такое ведь проходит.
а почему со стороковой переменной разве нельзя просто удалить значение '/%'  ?
например еси есть значение Маша/бугалтер, то при некотором запросеполучиться Маша

Это сообщение отредактировал(а) norov - 29.6.2007, 15:13
PM MAIL ICQ   Вверх
Bose
Дата 29.6.2007, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51



norov, копай в сторону UDF. 
Конкретных названий посоветовать не могу. Вероятно у вас уже установлены какие-то библотеки. Возможно там есть функции типа fn_pos и fn_copy.
PM MAIL WWW Skype   Вверх
Anark1
Дата 29.6.2007, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 622
Регистрация: 15.12.2006
Где: RF -> Moscow

Репутация: нет
Всего: 11



norov,
думаю вот это вам должно помочь.
UDF Библиотека rFunc для работы со строками, вычисляемыми полями, датами.
http://sourceforge.net/projects/rfunc

Это сообщение отредактировал(а) Anark1 - 29.6.2007, 15:14


--------------------
Enjoy yourself, still you can...;)

user posted image

user posted image
PM MAIL ICQ   Вверх
norov
Дата 2.7.2007, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 6.4.2007
Где: Россия, г. Тверь

Репутация: нет
Всего: нет



попробую что-нить для delphi7 найти. 
еси у кого есть еще соображения, буду благодарен.
жду
PM MAIL ICQ   Вверх
Bose
Дата 2.7.2007, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51



norov, UDF ставится на сервере баз данных, и позволяет производить манипуляции с данными на стороне сервера.

Другой вариант, это вытаскивать необработанные данные из базы и обрабатывать их уже в программе. Например через Calculated Fields
PM MAIL WWW Skype   Вверх
norov
Дата 3.7.2007, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 6.4.2007
Где: Россия, г. Тверь

Репутация: нет
Всего: нет



всем огромное спасибо! как закончу тест вытащу для вас свой пассер.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Interbase"
Alex

Обязательно указание:

1. Версию InterBase (Firebird, Yaffil)

2. Способа доступа (ADO, BDE, IBX и т.д.)

  • КАК ПРАВИЛЬНО ОФОРМИТЬ КОД - ЗДЕСЬ
  • КАК ПРАВИЛЬНО УКАЗАТЬ ТЕКСТ ОШИБКИ - ЗДЕСЬ
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Firebird, Interbase | Следующая тема »


 




[ Время генерации скрипта: 0.0454 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.