php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.02.2008, 16:06  
Neuer Benutzer
 
Registriert seit: 06.02.2008
Beiträge: 4
mastercoyote
Standard MYSQL Hilfe Kreuztabellen

Mein Problem

Ich möchte eine Kreuztablle erstellen in SQL habe einen Tabelle mit den Feldern MainProcess, SubProcess, Roles und Position.

MainProcess und SubProcess sind die Zeilenfelder
Roles sind die Spaltenfelder und die Position sind Datenfelder

ich will keine Berechnungen durchführern wie SUM oder Count

habe angefangen aber fehlt die Daten von Position
Code:
SELECT
   Main_Process, Process, 
   GROUP_CONCAT(CASE WHEN Position = 1 THEN Roles ELSE NULL END) AS Development_Coordinator,
   GROUP_CONCAT(CASE WHEN Position = 2 THEN Roles ELSE NULL END) AS Quality_Manager,
   GROUP_CONCAT(CASE WHEN Position = 2 THEN Roles ELSE NULL END) AS Quality_Manager,
   GROUP_CONCAT(CASE WHEN Position = 2 THEN Roles ELSE NULL END) AS Manager,
   GROUP_CONCAT(CASE WHEN Position = 2 THEN Roles ELSE NULL END) AS Virtual_Test,
   GROUP_CONCAT(CASE WHEN Position = 2 THEN Roles ELSE NULL END) AS Ressource
FROM 
   Integration
GROUP BY 
   Main_Process, Process
ich würde mich sehr freuen, wenn ihr mir dabei helfn würdet. Danke.
mastercoyote ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.02.2008, 16:30  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

ich verstehe nicht im geringsten was du vorhast...
cycap ist offline   Mit Zitat antworten
Alt 06.02.2008, 17:12  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.654
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo mastercoyote,

zunächst ein herzliches Willkommen bei uns!

Ich kann mich cycap nur anschließen: um dir helfen zu können, benötige ich noch ein paar mehr Infos. Das Wort "Kreuztabelle" ist mir auch noch nicht unter die Finger gekommen. Meinst du vielleicht "Beziehungstabelle"?
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 07.02.2008, 07:57  
Neuer Benutzer
 
Registriert seit: 06.02.2008
Beiträge: 4
mastercoyote
Standard

Hallo!

um mich klara auszudrücken

Habe eine Tabelle XY, und diese hat die Felder MainProcess, Process, Roles und Position.

Mein Wunsch ist es: eine Tabelle zu bekommen wie eine Kreuztabelle aussieht, aber ohne Berechnungen z. B. Ansicht von der Tabelle:

_______________________|Development|__QA__|____Man ager|____
MainProcess|:::::Process::.|
Meeting::::Dokumentation|::::::R:::::::.|::::S:: .|::::::::T:::::.|:::
usw..

Meeting komt aus MainProcess
Dokumment. kommt aus Process
R, S und T kommt aus Postion

in Excel kann man mit PIVOT Tabelle machen, ich möchte in MySQL haben
etwas klara. Danke.
mastercoyote ist offline   Mit Zitat antworten
Alt 07.02.2008, 09:01  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Ich verstehs zwar immer noch nicht aber warum hast nicht einfach deine 5 Spalten und dann trägst du pro Zeile ein was du eben hast?!?

Deine Darstellung mit den ganzen Unterstrichen und Doppelpunkten Blick ich nicht wirklich durch!
Flor1an ist offline   Mit Zitat antworten
Alt 07.02.2008, 09:10  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.654
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo mastercoyote,

ich muss mich RaZor anschließen, ich verstehe das Problem immer noch nicht. Hast du mal eine Code-Beispiel, oder eine URL, auf der die Problematik aufgezeigt wird?
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 07.02.2008, 09:16  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Ich hab jetzt nochmal extra nachgeschaut was so eine PIVOT Tabelle ist.

Auf jeden Fall kannst du mit SQL NUR Tabellen erstellen die gegebene Spalten hat und dann x-beliebige Zeilen. Aber JEDE Zeile hat die selben Spalten! Du musst dir eben überlegen wie du dein Problem aufteilen kannst. Meistens kann man sein Problem auf mehrere Tabellen verteilen und deren Einträge haben dann zueinander Relationen!

Wenn du nach "Normalisierung" suchst wirst du finden was ich meine.
Flor1an ist offline   Mit Zitat antworten
Alt 07.02.2008, 09:32  
Neuer Benutzer
 
Registriert seit: 06.02.2008
Beiträge: 4
mastercoyote
Standard

Was ich haben möchte:



code als csv. gespeichert
Code:
Roles;Main Process;Process;Position;;Main Process;Process;Development;Manager;Test
Development;Integration test;Test 1;A;;Integration test;Test 1;A;Null;Null
Manager;Integration test;Test 2;B;;Integration test;Test 2;Null;B;Null
Test;Integration test;Test 3;C;;Integration test;Test 3;Null;Null;C
mastercoyote ist offline   Mit Zitat antworten
Alt 07.02.2008, 09:50  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Mh ich versteh zwar immer noch nicht 100% was du willst aber für mich sieht es irgendwie so aus:


Tabelle "Roles":
Spalten: Position, Role
Einträge:
- A, Development
- B, Manager
- C, Test

Tabelle "Process":
Spalten: ID, Main Process, Process
Einträge:
- 1, Integration test, Test

Tabelle "Relations":
Spalten: Role, Process
Einträge:
- A, 1
- B, 1
- C, 1

So wäre das Problem auf mehrere Tabellen aufgeteilt! Man könnte Main Process und Process auch nochmal aufsplitten, es muss halt immer eine eindeutige ID oder "Role" existieren mit der man eine Relation aufbauen kann. Aber ich weiß nicht genau wie du dirs vorstellst. Ich hab mal ins Blaue geraten.
Flor1an ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
bitte hilfe! mysql fehler meldung: basicx PHP Tipps 2008 2 22.07.2008 16:36
Hilfe bei Mysql Query aus mehreren spalten benötigt cytrobic Datenbanken 8 18.05.2007 11:36
Anfänger braucht hilfe bei mysql abfrage :) Sauer Datenbanken 15 25.05.2006 09:50
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
Mysql startet nicht mehr ??? Hilfe ??? c01001 Datenbanken 12 25.01.2006 00:10
[Erledigt] HILFE HILFE HILFE mysqladmin.exe fehlt Datenbanken 7 20.12.2005 14:00
[Erledigt] mysql abfrage - Hilfe Datenbanken 2 25.10.2005 20:44
[Erledigt] HILFE BITTE! PHP Formular in MySQL eintragen... PHP Tipps 2005-2 9 01.10.2005 21:17
Hilfe: REGEXP in MySQL Datenbanken 1 16.09.2005 12:58
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Hilfe - PHP - Mysql - Museum Datenbank Beitragsarchiv 2 07.12.2004 17:44
Wieso mysql fehler? Bitte um Hilfe! PHP Tipps 2004-2 4 03.12.2004 19:10
Bloody n00b braucht Hilfe - Suchfunktion per PHP und MySQL PHP Tipps 2004 2 04.08.2004 22:28
[Erledigt] PHP5 &a m p; MySQL Datenbanken 5 01.08.2004 05:47
mysql ausgabe auf zeichen beschränken - hilfe!!! niffi PHP-Fortgeschrittene 16 03.06.2004 14:40

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql kreuztabelle, mysql kreuztabellenabfrage, mysql pivot table, kreuztabelle mysql, mysql pivot, mysql pivot tabelle, mysql kreuztabellen, php kreuztabelle, pivot tabelle mysql, mysql kreuztabelle erstellen, kreuztabellen mysql, mysql pivot example, php mysql kreuztabelle, pivot table mysql, kreuztabellenabfrage mysql, integrationstest b1, php pivot tabelle, kreuztabelle mysql abfrage, pivot mysql, kreuztabellen php

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:14 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.