Көбірек

Жұмбақ MapInfo сұрау синтаксис қателері

Жұмбақ MapInfo сұрау синтаксис қателері


Мен MapInfo v10 -те орындалатын қалыпты сұранысты алуға тырысамын.

SQLite Manager -де (тамаша Firefox плагині) бұл күтілгендей жұмыс істейді:

Аймақ_атауын, көше_атауын, мекенжайды, disp_lon, disp_lat FROM mtdArea, pointAddress, КӨШЕ (көшелер.link_ID = pointAddress.link_ID) ЖӘНЕ ((l_area_ID = аймақ_ID) НЕМЕСЕ (r_area_ID = аймақ_ID))

MapInfo баламасы

SELECT RationalisedMtdArea.Area_Name, RationalisedStreets.Street_Name, RationalisedPointAddress.address, RationalisedPointAddress.Disp_Lon, RationalisedPointAddress.Disp_Lat RationalisedMtdArea FROM, RationalisedPointAddress, RationalisedStreets ҚАЙДА RationalisedStreets.Link_ID = RationalisedPointAddress.Link_ID Ал ((RationalisedMtdArea.Area_ID = RationalisedStreets.L_Area_ID) Немесе (RationalisedMtdArea.Area_ID = Рационализацияланған көшелер.R_Area_ID))

... маған а береді

RationalisedMtdArea мен RationalisedPointAddress кестелері арасында қосылу жоқ.
WHERE сөйлеміндегі қосылу шарты жарамсыз.

MapInfo логикалықты ұнатпайдыНемесес?
Маған не жетіспейді?
Рахмет.


Шимпанза мырза айтқандай, MapInfo сұрауларға күрделі қосылуды ұнатпайды. Бұл жағдайда сұрауды екіге бөлуге тура келеді:

1

WHERE RationalisedStreets.Link_ID = RationalisedPointAddress.Link_ID және RationalisedMtdArea.Area_ID = Рационализацияланған көшелер.L_Area_ID

2

WHERE RationalisedStreets.Link_ID = RationalisedPointAddress.Link_ID және RationalisedMtdArea.Area_ID = Рационализацияланған көшелер.R_Area_ID

Содан кейін нәтижелерді бірге қосыңыз. Бұл бірдей нәтиже беруі керек.

Сонымен қатар, деректерді SQL сұранысы немесе PostGres / PostGIS сияқты кеңістіктік ДҚБЖ -ге жылжытыңыз, мұнда күрделі SQL сұраулары қолдау көрсетіледі (және MapInfo 10 нәтижелерге қол жеткізе алады)


Менің ойымша, бұл логикалық OR -ға қарсы емес, егер сіз оларды біріктірудің бір бөлігі ретінде қолдануға тырыспасаңыз. Мысалға:

КЕЛДЕН КЕЛДІҢІНЕН ТАҢДАҢЫЗ col = 1 НЕМЕСЕ col = 2

... жұмыс істейтін болады.

Егер сіз кодтағы НЕМЕСЕНІ AND -ке ауыстырсаңыз, ол жұмыс істейді (өйткені ол дұрыс талданатын болады. Әрине, ол сізге дұрыс нәтиже бермейді).

Кешіріңіз, бұл көп көмектеспейді.


Бейнені қараңыз: Mapinfo Pro Advanced x32x64 - Setup + Key