php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 10-07-2008, 17:06
Anbu
 Registrierter Benutzer
Links : Onlinestatus : Anbu ist offline
Registriert seit: Dec 2006
Beiträge: 505
Anbu zeigte ein beschämendes Verhalten in der Vergangenheit
Standard [Oracle] SQL - Logik

Hi,

bin an diesem Problem echt verzweifelt.

Es gibt 2 Tabellen.
Aus der NUTZER Tabelle brauche ich alle Abteilungen(ABT) einmal. Zusätzlich brauche ich das zugehörige Datum(EDATUM) aus der Tabelle Norm. Mithilfe der Tabelle Norm wird das Ergebnis noch ein wenig eingegrenzt.

Das Problem: Der distinct wird durch die selektierung des Datums aufgehoben, da eine Abteilung im selben Quartal mehrmals auftauchen kann. Was ich für eine Quartalsauswertung nicht gebrauchen kann.

Hier ein Beispiel:

ABT1 | 2001-08-16
ABT1 | 2005-06-27
ABT1 | 2005-09-06
ABT1 | 2005-09-07
ABT1 | 2006-04-27
ABT1 | 2006-10-27
ABT1 | 2007-04-11

Hier mein Select:
Code:
SELECT DISTINCT NUTZER.ABT AS ANZAHL, NORM.EDATUM
FROM NORM LEFT JOIN NUTZER ON SUBSTR(NORM.BETREUER,-5) = NUTZER.NUTZERNR
WHERE NUTZER.ORGEINHEIT = 'DCAGN01'
AND NORM.KEY LIKE 'DC%'
AND NORM.LDATUM = '*'
Hier wäre der Select ohne das Datum abzufragen. Hier würde ich zwar alle Abteilungen rausbekommen aber ohne das Datum bringt mir das nichts
Code:
SELECT DISTINCT ABT FROM NUTZER WHERE ORGEINHEIT = 'DCAGN01' AND NUTZERNR IN
(SELECT SUBSTR(BETREUER,-5) FROM NORM WHERE KEY LIKE 'DC%' AND LDATUM = '*')
Also wie schaffe ich es jede Abteilung einmal mitsamt dem dazugehörigen Datum zu selektieren?

Ich hoff mir kann jemand helfen und ich habs verständlich erklärt
__________________
Lurchi ! Lurchi ! Lurchi !
Mit Zitat antworten
  #2 (permalink)  
Alt 11-07-2008, 07:19
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wenn eine Abteilung mehrere Daten hat, welches ist dann das Datum, das Du haben möchtest?

Seit wann kennt ORACLE die LEFT JOIN Syntax von MySQL?
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #3 (permalink)  
Alt 16-07-2008, 14:32
Anbu
 Registrierter Benutzer
Links : Onlinestatus : Anbu ist offline
Registriert seit: Dec 2006
Beiträge: 505
Anbu zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Also ich will pro Quartal eine Abteilung auch nur einmal haben. Das Datum was ich suche ist in der Norm Tabelle. Die Verbindung zwischen Nutzer und Norm Tabelle ist die NUTZERNR, die in der Tabelle NUTZER zu einer Abteilung gehört, und in der Tabelle Norm ein Datum hat.
__________________
Lurchi ! Lurchi ! Lurchi !
Mit Zitat antworten
  #4 (permalink)  
Alt 16-07-2008, 15:45
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von MelloPie
Seit wann kennt ORACLE die LEFT JOIN Syntax von MySQL?
Seit Version 10g
Und das ist natürlich nicht primär die MySQL-Syntax, sondern die Ansi-SQL-Syntax

@Anbu
Ich vermute, dein Problem ist - unabhängig vom verwendten DBMS - so nicht lösbar. Das ist aber vermutlich ein Problem des Designs und nicht der Abfrage.
Aber vielleicht zeigst du und deine Struktur und versuchst präziser zu beschreiben, was du haben willst.
__________________
Gruss
H2O
Mit Zitat antworten
  #5 (permalink)  
Alt 18-07-2008, 15:08
Anbu
 Registrierter Benutzer
Links : Onlinestatus : Anbu ist offline
Registriert seit: Dec 2006
Beiträge: 505
Anbu zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Ja ich habs jetzt geschafft. Mit einem SQL-Befehl hätte es nicht geklappt. Ich habs jetzt per exzessiven View-Gebrauch gelöst .

Naja die DB ist auch echt beschissen aufgebaut, aber is halt von nem Kunden und man darf ja nix dran ändern. *würg*

Trotzdem danke an alle und sorry dass ich mich net besser ausgedrückt hab.

schönes Wochenende, grüßle.
__________________
Lurchi ! Lurchi ! Lurchi !
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:26 Uhr.