|
MySQL.RU - Webboard
Вернуться
Помогите составить запрос. (Spank) 21/12/2004 - 11:50:14
Re: Помогите составить запрос. (Валентин) 21/12/2004 - 18:07:46
> Original message text:
> From: Spank - 21/12/2004 - 11:50:14
> Subject:Помогите составить запрос.
> -----------------
> Есть таблица к примеру "test" в ней два поля "name" и "sort_num"
> В поле name содержится имена а в поле "sort_num" номера для сортировки. Есть две записи:
> name='test' sort_num='1'
> name='tt' sort_num='2'
> И нужно поменять местами значения полей sort_num, тоесть что бы первое поле стало вторым, а второе первым. В запросе я хочу как нить указывать что бы просто переместить поле с таким то именем назад и если после него было еще какое нить поле с более высоким sort_num то они подменялись бы а если бы у этого поля был самый высокий sort_num то ничего бы не происходило.
>
> Надеюсь понятно выразился...
>
From: Валентин - 21/12/2004 - 18:07:46
Subject:Помогите составить запрос.
-----------------
Ответ в том, что не понятно зачет такой изврат нужен....
Ответ кроется в неправильной реализации задачи.
А насчет поменять местами значения поля сортировки, так при указанных полях одним запросом это можно попробовать сделать мультиобновлением 2-х таблиц, каждая из которых будет этой таблицей.... Но не вызовет ли это ошибку - я не знаю....
и подобные запросы без какого-либо объединения будут жутко долгие....
Поэтому ответ - нельзя.
Правильно проектируй базу и клиента.
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
19174
|
|