• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Google Maps / Fusion Tabelle - Daten aus meiner Datenbank ziehen

vished

New member
Hallo zusammen,

ich möchte gerne Google Maps einbinden und dazu die Fusion Tabelle nutzen um die Ländergrenzen einzuzeichen.
Hierzu möchte ich gerne folgendes Beispiel nachbauen:
https://developers.google.com/maps/...ipt/examples/layer-fusiontables-styling?hl=de

Code:
function initMap() {
  var map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: -25, lng: 133},
    zoom: 4
  });

  var layer = new google.maps.FusionTablesLayer({
    query: {
      select: 'geometry',
      from: '1ertEwm-1bMBhpEwHhtNYT47HQ9k2ki_6sRa-UQ'
    },
    styles: [{
      polygonOptions: {
        fillColor: '#00FF00',
        fillOpacity: 0.3
      }
    }, {
      where: 'birds > 300',
      polygonOptions: {
        fillColor: '#0000FF'
      }
    }, {
      where: 'population > 5',
      polygonOptions: {
        fillOpacity: 1.0
      }
    }]
  });
  layer.setMap(map);
}

Allerdings möchte ich, dass die Werte in der WHERE - Klausel nicht in der Fusion Tabelle stehen, sondern direkt in meiner Datenbank.
-> Also "population" oder "birds" soll dann ein Objekt aus meiner Datenbank sein.

Die Länderkürzel habe ich ebenfalls bei mir in einer Datenbank. Also Beispiel:

Tabelle: Customer
ID, Country

Faktentabelle:
Dort habe ich dann z.B. meinen Umsatz.

Ich möchte die WHERE - Klausel so anpassen, dass ich nach dem Umsatz pro Land in meiner Datenbank abfrage. Also alle Länder, die mehr als 5000 EUR haben, sollen dann eben grün eingefärbt werden.

Wie kann ich das machen?
 
Dafür musst du vermutlich eine Serverseitige Sprache nehmen, welche dir die Werte aus der DB ausließt. Anschließend musst du diese Werte mit einem AJAX Request auf die Client Seite holen. In dessen done-Funktion wird dann die Karte gemalt.
 
Ich hab' jetzt mit Fusion Tabellen noch nicht gearbeitet, aber kann man da keine Subqueries machen? In (My)SQL würde das in etwa so aussehen:
Code:
SELECT `geometry`
FORM `laender`
 WHERE
 	 `code` IN (
 		SELECT `code`
 		FROM `fakten`
 		WHERE `umsatz` > 5000
	)

PS: Ich bin mir auch nicht sicher, ob es das Beste ist, diese sachen in verschiedenen Tabellen zu speichern... es würde einiges einfacher machen, wenn das in einer Tabelle wäre. Jedes Land hat ja nur einen Umsatz...
 
Zurück
Oben