powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / command contains unrecognized phrase/keyword
3 сообщений из 28, страница 2 из 2
command contains unrecognized phrase/keyword
    #39713354
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предположим, у таблиц есть такие записи

Таблица pkr

ods oup1112
Таблица norma

ods fld_11314
Результат запроса

Код: sql
1.
select * from pkr, norma where pkr.ods = norma.ods


будет такой

pkr.ods pkr.oup norma.ods norma.fld_11113111412131214

Для простоты, можно считать результат объединения таблиц неким аналогом вложенных циклов. Т.е. для каждой записи таблицы pkr будут отобраны ВСЕ записи таблицы norma с тем же значением поля ods. Если у Вас в обоих таблицах есть несколько записей с одинаковым значением поля ods (т.е. связь типа много-ко-многим), то Вы и получите удвоение результата выборки

В отношение запросов Select-SQL понятие "текущая запись" просто не существует. Записи связываются между собой только и исключительно по значению полей, указанных в условии связи и никак иначе
...
Рейтинг: 0 / 0
command contains unrecognized phrase/keyword
    #39713360
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TTsYekaterinaDima T,

можно задать еще вопрос (уж извините за надоедливость!)? такой простой запрос:
Код: sql
1.
select pkr.ods, pkr.oup, pkr.tpr, pkr.prs from pkr, norma where pkr.ods=norma.ods


в результате записи дублируются. например, вместо 16 шт - (1113311315), выводится 32 шт. (1113311315).
Это говорит о том что данные не нормализованы и к ним нельзя применять select. Советую взять любую книгу про СУБД и прочитать там теорию про нормальные формы.

Язык SQL можно использовать только если данные хранятся согласно реляционной теории. Если под словом "таблица" понимается тоже что и таблица экселя, то SCAN ... ENDSCAN и самодельные костыли.Ну, это вы тут слегка перегнули...
Про степень нормализации сия ситуация не говорит ничего. Ибо мы не знаем, а автор, как обычно, посчитал это очевидным и недостойным упоминания, смысл данных в этих таблицах.
Ситуация показывает нам степень непонимания автором принципов работы запросов и стандартным для большинства людей неумением точно сформулировать свои мысли и желания даже на обычном языке, не говоря уж о языках программирования.
Вот сейчас в запросе она требует получить все сочетания записей из двух таблиц. А точно это ли ей надо? Судя по скудным комментариям ей таки надо записи из одной таблицы, имеющие значения в одном из полей, встречающиеся в в соответствующем поле другой таблицы. Согласитесь, что from pkr, norma where pkr.ods=norma.ods явно этому не соответствует? И что тут надо что-то другое написать? А то получается, что хочет одно, а требует другое и потом удивляется, что не получает желаемое.

2 TsYekaterina:
Таки займитесь правильным формулированием сначала задачи, а потом уже запрос по правильной формулировке пишИте.
Если сами не можете, то обращайтесь, но не темните, а полно описывайте данные и связанную с ними задачу.
...
Рейтинг: 0 / 0
command contains unrecognized phrase/keyword
    #39713376
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey SizovПро степень нормализации сия ситуация не говорит ничего.
from pkr, norma where pkr.ods=norma.ods
это альтернативный способ записи
Код: sql
1.
from pkr join norma on pkr.ods=norma.ods


раз есть дубли, значит ods не является ключом ни одной из упомянутых таблиц, следовательно надо либо сначала нормализовать исходные данные и потом делать select, либо решать другим способом.
В любом случае это говорит о непонимании реляционной теории и необходимости ее поизучать.

Sergey SizovА точно это ли ей надо?
Согласен. Возможно надо совсем другое.
...
Рейтинг: 0 / 0
3 сообщений из 28, страница 2 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / command contains unrecognized phrase/keyword
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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