![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужно составить SQL запрос для dbf [D7, dBase, FoxPro]
abhtr © (2006-05-22 14:39:00)Наверное, делитанский вопрос. Прошу прощения и помощи.
Существует таблица (Detal.dbf), имеющая поля: Detal_ID (integer), Detal_Name (string), Detal_P (integer).
Нужно составить запрос выбирающий записи (Detal_Name, Detal_P), у которых название детали (Detal_Name) повторяется больше 2 раз, и при этом, вес деталей (Detal_P) был бы разный.
Desdechado (2006-05-23 12:32:00) [1]наверняка обращение к неинициализированной объектной переменной или переменной, содержащей ссылку на уничтоженный объект
abhtr (2006-05-23 10:16:00) [2]А из-за чего это может быть?
Johnmen (2006-05-23 09:12:00) [3]Это уже у тебя.
abhtr (2006-05-23 09:06:00) [4]Обработка шла дольше, чем с первым вариантом, но...
К сожалению, опять ошибка:
Access violation at address 4BDE5C0D in module 'IDAPI32.DLL'. Read of address 00000000.
???
Johnmen (2006-05-22 17:17:00) [5]Да-да. Вкралась досадная непростительная ошибка :)))
SELECT * FROM Detal T1
WHERE 2 < (SELECT COUNT(DISTINCT T2.Detal_P) FROM Detal T2 WHERE T1.Detal_Name=T2.Detal_Name)
При этом могут быть детали с одинаковым весом.
abhtr (2006-05-22 17:09:00) [6]Выдает сообщение:
"Single row subquery produced more then once row"
Johnmen (2006-05-22 14:54:00) [7]
SELECT * FROM Detal T1
WHERE 2 < (SELECT COUNT(*) FROM Detal T2 WHERE T1.Detal_Name=T2.Detal_Name GROUP BY T2.Detal_P)