Hallo,
der Satz wurde bestimmt schon hundertfach gequält: ich bin ein absoluter Neuling, keine Ahnung, aber mit großen Herausforderungen (neudeutsch für Probleme...). Aber ich glaube, hier bin ich richtig.
Mit base möchte ich fürs Adressmanagement nutzen. Quelle sind .csv Dateien, die ich nach Eingangsdatum ablege (Beispiel: Adressen_081212.csv, Adressen_090116.csv usw.). Mit base möchte ich filtern, welche Adressen in der Datei Adressen_090116.csv stehen, die noch nicht in Adressen_081212.csv enthalten sind, welche neu dazugekommen und welche rausgefallen sind.
Anders ausgedrückt: ich möchte wissen, welche Adressen im Bestand, welche neu hinzu gekommen sind, und welche nicht mehr existet sind.
Richtig interessant ist dabei, dass ich für diese Adressen keine Kundennummer o.ä. vergeben kann. Geht auch deswegen nicht, weil "Neuzugänge" in Adressen_090116.csv sich unter die Bestandsadressen mischen, bzw. Abgänge schlicht nicht mehr aufgeführt werden. Feste Unterscheidungsmerkmale sind also nur Name, Nachname, Straße und Hausnummer, Postleitzahl, Ort.
Eine Schritt für Schritt Erklärung wäre bei mir sinnvoll, da ich mich bislang nur mit Microsoft Excel befasst habe.
Ach so, meine Performance: IBM ThinkPad T30, WindowsXP SP3, OOo 2.4.1
Vielen Dank, beste Grüße und schönes WE!
Markus
Adressen vergleichen, neue anzeigen lassen
Moderator: Moderatoren
Re: Adressen vergleichen, neue anzeigen lassen
Kallo Markus75,
1. überführe Deine csv-Dateien in eine neue Base-DB als Tabellen wie hier beschrieben:
http://www.ooowiki.de/csvDatentabelle/Import
2. Nach dem Import klickst Du in Base auf "Abfragen" >> "Abfrage in SQL Ansicht erstellen", wählst unter "Bearbeiten">> "SQL Kommando direkt ausführen" und gibst folgendes ein. Die Beispiele beziehen sich auf zwei zu vergleichende Tabellen "Adressen1" und "Adressen2"
>>Speichern
Nächste Abfrage erstellen:
>>Speichern
Nächste Abfrage erstellen:
Rufst Du nun die gespeicherten Abfragen durch Doppelklick auf, dann werden Dir die Ergebnisse geliefert.
Du müsstest in die Abfragen natürlich sämtliche Unterscheidungskriterien aufnehmen (Name, Nachname, Straße und Hausnummer, Postleitzahl, Ort)
Da Du monatlich immer wieder neue Dateien (Tabellen) miteinander vergleichst, musst Du ggf. die Tabellennamen in den Abfragen anpassen. Dazu rechter Mausklick auf die Abfrage "In SQL Ansicht bearbeiten" und Tabellennamen anpassen.
Gruß Barlee
1. überführe Deine csv-Dateien in eine neue Base-DB als Tabellen wie hier beschrieben:
http://www.ooowiki.de/csvDatentabelle/Import
2. Nach dem Import klickst Du in Base auf "Abfragen" >> "Abfrage in SQL Ansicht erstellen", wählst unter "Bearbeiten">> "SQL Kommando direkt ausführen" und gibst folgendes ein. Die Beispiele beziehen sich auf zwei zu vergleichende Tabellen "Adressen1" und "Adressen2"
Code: Alles auswählen
--in beiden Tabellen vorhandene Datensätze
SELECT
"Vorname", "Nachname", "PLZ"
FROM "Adressen1"
INTERSECT
SELECT
"Vorname", "Nachname", "PLZ"
FROM "Adressen2"
Nächste Abfrage erstellen:
Code: Alles auswählen
--in Adresse 2 nicht mehr vorhandene Datensätze
SELECT
"Vorname", "Nachname", "PLZ"
FROM "Adressen1"
MINUS
SELECT
"Vorname", "Nachname", "PLZ"
FROM "Adressen2"
Nächste Abfrage erstellen:
Code: Alles auswählen
--neue Datensätze in Adresse2
SELECT
"Vorname", "Nachname", "PLZ"
FROM "Adressen2"
MINUS
SELECT
"Vorname", "Nachname", "PLZ"
FROM "Adressen1"
Du müsstest in die Abfragen natürlich sämtliche Unterscheidungskriterien aufnehmen (Name, Nachname, Straße und Hausnummer, Postleitzahl, Ort)
Da Du monatlich immer wieder neue Dateien (Tabellen) miteinander vergleichst, musst Du ggf. die Tabellennamen in den Abfragen anpassen. Dazu rechter Mausklick auf die Abfrage "In SQL Ansicht bearbeiten" und Tabellennamen anpassen.
Gruß Barlee