
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
12.06.2008, 21:10
|
|||
|---|---|---|---|
|
|||
Поиск по полям в 1 таблице |
|||
|
#18+
позадумке - выбераем фирму(combo1), нажимаем поиск(button1), выводится список товара. написал код Все действия осуществляються по одной таблице где tovar.-это таблица firma, tip - поля таблицы sklad-база SELECT tovar.firma, tovar.tip; FROM ; "sklad!tovar" tovar ; INNER JOIN sklad!tovar ; ON tovar.firma = tovar.tip; -- подозреваю что сдесь напутал WHERE tovar.firma = (thisform.combo1.value) thisform.combo1.SetFocus() thisform.Refresh() thisform.combo1.value="" выдает сообщение такого вида There is a duplicate table alias 'TOVAR' in the FORM clause. В чем ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.06.2008, 22:51
|
|||
|---|---|---|---|
|
|||
Поиск по полям в 1 таблице |
|||
|
#18+
Не совсем понятно, что за значения находятся в полях - firma, tip. Это первое. Второе, зачем такие сложности с объединением, если запрос идет только к одной таблице. И вообще, тут надо искать ошибку не в самом запросе, а в структуре базы данных. Что нужно сделать? Это - создать две таблицы, где в одной будет храниться перечень товаров (tovar), а во второй – перечень фирм (firms). При этом, в первой - должно быть поле, которое каждую строку товара будет однозначно привязывать к какой-то фирме. Например – idfirm. Тогда при составлении запроса, именно по этому полю и будет происходить объединение данных из этих таблиц. ( ON firms.idfirm = tovar idfirm и конструкция - WHERE, для этой цели - будет уже не нужна) Дальше, на форме нужно иметь, кроме комбобокса с переченем фирм – или еще один комбобокс, куда будет выводиться список товаров выбранной фирмы или, для тех же целей – Grid. Т.е. идея – очень проста, в одном комбобоксе выбираем – фирму, во втором комбобоксе (или Gridе) выводим список товаров, которые ей соответствуют. При выполнении того, что я написал, у тебя значительно упроститься как сам запрос, так и вывод его результата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.06.2008, 10:25
|
|||
|---|---|---|---|
Поиск по полям в 1 таблице |
|||
|
#18+
Так он же тебе прямым текстом написал - дважды указал один и тот же алиас таблицы-источника в директиве FROM. Как анализатор будет разбирать из какой таблицы надо взять значение поля если алиасы одинаковые? В подобных случаях используют внутренние алиасы, примерно так: Код: plaintext 1. 2. 3. Но, в данном конкретном случае вообще нет смысла связывать таблицу с самой собой. Зачем? Какую дополнительную информацию ты хочешь от этого получить? Тебе ведь, всего-лишь надо отфильтровать товары одной фирмы. Вот и фильтруй Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=41&tablet=1&tid=1587670]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 340ms |

| 0 / 0 |
