Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Поиск символа из масcива в строке [FireBird 2.1]


Страницы:   1 2

DelphiN! ©   (2008-07-22 13:08:00) 

Нужно написать запрос, который выводил все записи, в которых встречается какой либо символ из английского и русского алфавита, как можно это сделать?
Нужно что-то похожее на
select * from table where field1 in ['A..'z']


PEAKTOP   (2008-07-22 14:59:00) [21]

можно еще

SELECT  T1.*
FROM    table1 T1
WHERE  (T1.FIELD1 SIMILAR TO '[A-z]')
     OR  (T1.FIELD1 SIMILAR TO '[А-я]')


Но для использования нужен Firebird не ниже версии 2.5.0.20343


DelphiN!   (2008-07-22 14:55:00) [22]


> turbouser ©   (22.07.08 13:53) [7]
>
> Лови...


Спасибо!

А можно ли проверить число ли в строке или нет? Только без ХП


Правильный$Вася   (2008-07-22 14:00:00) [23]

UDF сделай


turbouser   (2008-07-22 13:53:00) [24]


> DelphiN!   (22.07.08 13:46) [5]

Лови...

CREATE PROCEDURE EN_RU (
   s varchar(50) character set cyrl)
returns (
   idx integer)
as
declare variable i integer;
declare variable ch char(1) character set cyrl;
declare variable en varchar(30);
declare variable ru varchar(34);
begin
EN='ABCDEFGHIJKLMNOPQRSTUVWXYZ';
RU='АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';
I=1;
while (i<=strlen(:S)) do
begin
 Ch = substring(:S from :i for 1);
 if ((:EN containing :Ch) or (:RU containing :Ch)) then
 begin
   IDX=:I;
   break;
   end
 I=:I+1;
 end
 suspend;
end


turbouser   (2008-07-22 13:51:00) [25]


> DelphiN!   (22.07.08 13:46) [5]
> А без хранимых процедур никак?

case -ом :)


DelphiN!   (2008-07-22 13:46:00) [26]


> stas ©   (22.07.08 13:24) [4]


В FireBird 2.1 так не работает


> turbouser ©   (22.07.08 13:23) [3]


А без хранимых процедур никак?


stas   (2008-07-22 13:24:00) [27]

В MS SQL можно так: field1 like '%[А-Я]%'


turbouser   (2008-07-22 13:23:00) [28]


> DelphiN!  

ХП + substring


Dizzel   (2008-07-22 13:11:00) [29]

Вернее
select * from table where ['A..'z'] in field1


DelphiN!   (2008-07-22 13:11:00) [30]


> Dizzel   (22.07.08 13:11) [1]


Это я ...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо