Тема
|
INTERBASE
|
|
Автор | aginor (Нерегистриран) |
Публикувано | 22.10.03 16:13 |
|
Здравейте
Можете ли да ми кажете в SELECT зявка как да използвам LIKE '%нещо%' при положение че "нещото" е променлива :var
примерно: SELECT COUNT(*) FROM X WHERE FIELDS LIKE :x <- тук е проблема не може да се използва прочент защото ще трябва да сложа и апострофи.
Предварително благодаря
|
|
|
SELECT COUNT(*) FROM X WHERE FIELDS LIKE '%' || :x || '%'
|
|
Тема
|
Re: INTERBASE
[re: killall]
|
|
Автор | lNTERBASE (Нерегистриран) |
Публикувано | 23.10.03 12:46 |
|
Незнам защо но не става в интерес на истината
Ползвам твоя пример и нещо не върви
|
|
|
i kak go polzwash. Ot nyakakwa SQL zayawka, kato stored procedure ili kak. Pri mene towa raboti :
create procedure test_variable ( var varchar(100) )
returns ( cnt integer )
as
begin
select count(*) from a_table where a_field like '%' || :var || '%' into :cnt;
suspend;
end
Interbase LI-V6.0.1.0
Редактирано от killall на 23.10.03 16:42.
|
|
|
Wsyshtnost sega kato se zamislya wyobshte ne ti tryabwa da polzwash like. Mojesh i taka, po-dobre mi izglejda nyakak si :
select count(*) from a_table where a_field containing :x
|
|
Тема
|
Re: INTERBASE
[re: killall]
|
|
Автор | aginor (Нерегистриран) |
Публикувано | 03.11.03 14:13 |
|
Нямам представа какво става
Имам процедура с 3 входящи параметъра и един който се връща. Имам една таблица с думи. Искам да проверя в изречението което подавам има ли дума от таблицата с думи това е нищо повече и неще и това си е.
|
|
|
Ako pastnesh tuka i kak go prawish tochno towa deto ne stawa moje i da izmislim neshto ...
|
|
Тема
|
Re: INTERBASE
[re: killall]
|
|
Автор | aginor (Нерегистриран) |
Публикувано | 04.11.03 10:57 |
|
CREATE PROCEDURE DBINSERT (
MESSAGE VARCHAR (180),
DATETIME DATE,
PHONE CHAR (20))
RETURNS (
RESULT SMALLINT)
AS
BEGIN
SELECT COUNT(WORDS.WORD) FROM WORDS
WHERE WORDS.WORD LIKE '%'||:MESSAGE||'%' INTO :COUNTWORD;
SUSPEND;
END
Където в таблица WORDS да речем има дума: ЯБЪЛКА, а MESSAGE e: ЗЛАТНАТА ЯБЪЛКА
|
|
|
Ami estestweno che nyama da stawa.
WORDS.WORD LIKE '%'||:MESSAGE||'%'
ti proweryawa ne dali dali wyw words.word se sydyrja messge, a ne obratnoto, kakto wsyshtnost tryabwa da e :))
Probwaj towa :
SELECT COUNT(WORDS.WORD) FROM WORDS
WHERE :MESSAGE CONTAINING WORDS.WORD INTO :COUNTWORD;
|
|
Тема
|
Re: INTERBASE
[re: killall]
|
|
Автор | aginor (Нерегистриран) |
Публикувано | 04.11.03 13:47 |
|
Най - интересното е, че това също не работи
|
|