|
|
|
поиск несовпадений в двух таблицах
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! У меня есть две таблицы: в одной (назовем ее small_table)есть поле name. В нем находится обобщенное наименование детали: труба, фланец, гайка в другой (big_table) есть также поле name. В нем находится развернутое наименование: труба сечением 15х15, фланец оцинкованный, болт шестигранный Задача такова: выбрать из таблицы big_table те записи, части которых не встречаются в таблице small_table Для данного примера в результирующем запросе должна быть одна запись: болт шестигранный, так как труба и фланец присутствуют в таблице small_table, а болт - нет. Как это можно сделать по возможности средствами SQL-92? Если это нельзя - то как с SQL-ом аксесовским? Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2003, 08:39 |
|
||
|
поиск несовпадений в двух таблицах
|
|||
|---|---|---|---|
|
#18+
SELECT Таблица2.nnnn, Min([nnnn] Like "*" & [mmmm] & "*") AS Выражение1 FROM Таблица1, Таблица2 GROUP BY Таблица2.nnnn HAVING (((Min([nnnn] Like "*" & [mmmm] & "*"))=0)); Где Таблица1 выполняет роль SmallTable, Таблица 2 - BigTable. Вот только работать такой запрос с большим объемом данных совсем не быстро будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2003, 09:15 |
|
||
|
поиск несовпадений в двух таблицах
|
|||
|---|---|---|---|
|
#18+
имеет смысл подумать о нормализации базы данных - таком виде никуда не годится. - должна быть таблица элементы деталей с числовым уникальным индексом и кратким и полным описанием - таблица собранные детали, содержащая параметры собранной детали - таблица со связью один со стороны детали ко многим со стороны элементы содержащая список элементов собранной детали. после получения подобной структуры базы данных не составит труда получить любую информацию элементарным и быстрым запросом. а в результате любого запроса по нереляционным таблицам нет гарантии в верности результатов - вот пример : ТРУБА - TPУБA в первом случае все буквы кирилица во втором буквы TP A латиница + возможны грамматические ошибки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2003, 09:29 |
|
||
|
поиск несовпадений в двух таблицах
|
|||
|---|---|---|---|
|
#18+
Просто таблица small_table содержится в одной базе данных, а таблица big_table - в другой. В таблице big_table содержится информация об элементах спецификации чертежа, поэтому нормализация не проходит (не моя база данных). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2003, 09:44 |
|
||
|
поиск несовпадений в двух таблицах
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2003, 09:58 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32267264&tid=1679387]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
82ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 397ms |

| 0 / 0 |
