Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / please help ! query / 8 сообщений из 8, страница 1 из 1
18.09.2002, 00:50:38
    #32051177
vesna*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
est table Groups:


desc | childid | parentid
team1 | 69,5 | 5
team2 | 5,80,2 | 67,5,3
team3 | 72,73, | 74,75

mne nado select desc where parentid = '5'

esli ia pishy :


Код: plaintext
1.
select  description  ,parentID   from groups 
where CHARINDEX('5', childID) > 0 

ona mne vozvrashaet : team1, team2 i team3
team3 ne dolshna vozvrashat" tak kak tam net '5' a est' '75'

pocovetyite kak cdelat" ???
...
Рейтинг: 0 / 0
18.09.2002, 01:21:09
    #32051178
SandalTree
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
Ne tak nado delat bazy.

desc | childid | parentid
team1 | 69 | 5
team1 | 5 | 5
team2 | 5 | 67
team2 | 80 | 5
team2 | 2 | 3
team3 | 72 | 74
team3 | 73 | 75

i togda budet vsjo hokey!

select desc , parentid from groups
where parentid = 5

Sorry, "team1" vydast 2 raza, ne pomny kak pravilno nado Distinctrow kazetsja.
...
Рейтинг: 0 / 0
18.09.2002, 10:39:36
    #32051218
Victor Mitrofanov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
Если не хочется или нет возможности переделывать базу, как показано в предыдущем примере, то запрос нужно писать так:

select description ,parentID from groups
where (PATINDEX(',5,' , childID) >0) OR
(PATINDEX('5,' , childID) =1) OR
(PATINDEX('5,' , REVERSE(childID)) =1) OR
(childID='5')

Т.е. ищется строка, где поле ChildID или начинается с '5,',
или где-то в середине встречается ',5,' или заканчивается на ',5' или равна '5'
...
Рейтинг: 0 / 0
18.09.2002, 10:44:07
    #32051219
Victor Mitrofanov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
Sorry, chto napisal po-russki.

Esli ne hochetsya peredelyvat' bazu ili net vozmozhnosti, to zapros nuzhno pisat' tak:

select description ,parentID from groups
where (PATINDEX(',5,' , childID) >0) OR
(PATINDEX('5,' , childID) =1) OR
(PATINDEX('5,' , REVERSE(childID)) =1) OR
(childID='5')

T.e. ischetsya stroka, gde pole childID ili nachinaetsya s '5', ili gde-to v seredine vstrechaetsya ',5,' ili zakanchivaetsya na ',5' ili ravna '5'
...
Рейтинг: 0 / 0
18.09.2002, 12:39:47
    #32051268
Lexis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
Код: plaintext
1.
2.
3.
4.
where [parentid] like '5' 
	or [parentid] like '%,5,%' 
	or [parentid] like '%,5'
	or [parentid] like '5,%'
...
Рейтинг: 0 / 0
18.09.2002, 19:14:30
    #32051438
vesna*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
spacibo vcem bol"shoe !

ia tochno tak she i cdelala vchera :)

select @Requete = ' SELECT groupID , description as TeamLeadOf FROM groups WHERE '
select @Requete =@Requete + ' parentmask like ''%' + ','+convert(varchar(15),@mask)+ ','+ '%'''
select @Requete =@Requete + ' OR parentmask like ''' +convert(varchar(15),@mask) + ''''
select @Requete =@Requete + ' OR parentmask like ''' +convert(varchar(15),@mask) +','+ '%'''
select @Requete =@Requete + ' OR parentmask like ''%' + ','+convert(varchar(15),@mask) + ''''


eshe raz spcibo za pomosh" !!
...
Рейтинг: 0 / 0
19.09.2002, 11:50:35
    #32051607
Michael Hopgarden
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
2 vesna*

Если есть возможность в childid и parentid хранить данные с запятыми в начале и конце (можно даже так: team1 | ,69,,5, | ,5, ), то вы избавитесь от or
...
Рейтинг: 0 / 0
19.09.2002, 16:56:42
    #32051744
vesna*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
please help ! query
tablici yshe dostalis' takimi :(
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / please help ! query / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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