Temat: select w mapinfo

siema
jak wielu z was pewnie pamięta po ostatniej lekcji "etyki" sam się wziąłem jednak za pewna mini aplikacje w mapinfo tzn mapbasic.

pytanko ma takie: mam tabele w której nazwa i wysokość obiektu zaznaczonego na mapce,
i teraz tak chciał bym żeby tych namalowanych obiektów na mapce nie było widać.. żeby się wyświetlały dopiero po wykonaniu selecta (oczywiście te które spełniły warunek) ja kto zrobić? juz ładnych parę h próbowałem ;/
z góry dzięki !kamil wawrzański edytował(a) ten post dnia 17.02.11 o godzinie 15:24
Michał Majkowski

Michał Majkowski motocyklista;
analityk,
projektant, MS
Access, MapInfo,
G...

Temat: select w mapinfo

ładujesz mapę bez warstwy
wykonujesz select wybierając co chcesz Into nazwa_wybranych
dodajesz do mapy warstwę nazwa_wybranych
pomogło?

Temat: select w mapinfo

no pewnie ! dzięki!
zawsze miałem od razu dodawaną warstwę z otwieraną tabelą a niepotrzebnie :)

a teraz pytanko drugie ;D
czy da się jakoś do warunku zapytania dorzucić ze ma wziąć pod uwagę tylko i wyłącznie obiekty które będą się znajdowały pod namalowanym polygonem?

albo wyszukać wszystkie spełniające warunek ale na tej mojej warstwie z into wyświetlić tylko te co wylądowały by pod polygonem?
z góry dzięki!
Michał Majkowski

Michał Majkowski motocyklista;
analityk,
projektant, MS
Access, MapInfo,
G...

Temat: select w mapinfo

jeśli pod poligonem znaczy w jego obrębie to się da.

select * from <nazwa> where obj Within (select obj from warstwa_z_poligonem)
Karol Stachura

Karol Stachura Nie ma na świecie
rzeczy niemożliwych
- są tylko mało
pra...

Temat: select w mapinfo

entirely within - jak całe obiekty maja być ujęte w środku a nie ich centroidy.

Temat: select w mapinfo

okey dzięki wielkie !!!
edit hmm to działa ale tylko dla jednego poligonie
w sumie powinno mi to wystarczyć ale na wszelki wypadek fajnie by było żeby z większą ilością też działało ;Dkamil wawrzański edytował(a) ten post dnia 18.02.11 o godzinie 18:40

Temat: select w mapinfo

hmm próbowałem na wszelakie sposoby - jak jest więcej niz 1 wiersz w tabeli to wywala zawsze ze zapytanie zwróciło więcej niz 1odp

próbowałem na 100sposobów zmusić go żeby brał pod uwage tylko ostatni wiersz z tabeli ale jak to zrobić ?

część prób a i tak nie wszytkie

'select * from tab where obj Within (select * from objtab where ID=(select maximum(id))into temp
'dim a as string
'a= SELECT MAX(rowid)from objtab group by 1
'select * from tab where obj Within (SELECT MAX(rowid)from objtab group by 1)into temp

'Add Map Layer temp

'select * from objtab where rowid = (SELECT MAX(rowid)from objtab) into temp2
'select * from tab where obj Within temp2 into temp
'SELECT MAX(rowid)from objtab
'SELECT obj, MAX(rowid)from objtab
select * from objtab where rowid = (SELECT obj, MAX(rowid)from objtab group by MAX(rowid)) into temp2
select * from tab where obj Within temp2 into temp
Add Map Layer temp

może ktoś wskazać błąd? / napisać jak powinno być?
albo jak odzyskać zmienną z zapytania np?
żeby zapytanie SELECT obj, MAX(rowid)from objtab zwróciło np 6? i ta 6 wpakować do zmiennej ?
z góry wielkie dzięki!kamil wawrzański edytował(a) ten post dnia 19.02.11 o godzinie 10:19
Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: select w mapinfo

Nie pamiętam jak mapinfo sobie radzi z sqlem ale może Select top 1[kol1], [kol2]... from table order by id desc

Temat: select w mapinfo

select * from tab where obj Within (Select top 1 from objtab order by id desc) into temp

select * from tab where obj Within (Select obj, top 1 from objtab order by id desc) into temp

?
kompiluje ale przy użyciu
expression does not ewaluato to charcer string , invalid nr of col, generated by...
select * from tab where obj Within (Select top 1[id],[nazwa],[wysokosc] from objtab order by id desc) into temp
kompilator krzyczy ze znalazł [ a szukał froma

edit hmm zrobilem to tak ze jak dodaje poligon to tabeli objtab to przy okazji do zmiennej globalnej b
tabele fizyczna temp2 czyszczoną na starcie
i select * from tab where obj Within b into temp
insert into temp2 select * from temp

Add Map Layer temp2
ale z ciekawości i tak chciał bym wiedzieć jak to powinno być "normalnie" :Dkamil wawrzański edytował(a) ten post dnia 19.02.11 o godzinie 10:20
Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: select w mapinfo

a bez []? pokombinuj. mapinfo zapewne ma swój dialekt sql, albo nie lubi top1. Może lista kolumn bez [] przejdzie
Karol Stachura

Karol Stachura Nie ma na świecie
rzeczy niemożliwych
- są tylko mało
pra...

Temat: select w mapinfo

przy "group by" uzyskujesz tylko jedną wartość
zmienna = nazwa tabeli.kolumna
przy zapytaniu bez funkcji agregująceych zadaj pytanie z użyciem zmiennych. Nie używamy []
tyle podpowiedzi - reszta w mapbasic guide, link podałem w wątku "umoralniającym" :)Karol Stachura edytował(a) ten post dnia 19.02.11 o godzinie 16:43

Następna dyskusja:

Podręcznik do Mapinfo




Wyślij zaproszenie do