Sql: If ?

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/sql_if_143794/page_1 - zur Vollversion wechseln!


retro schrieb am 08.06.2005 um 14:38

In Sql ist in einem feld app und fin: immer wenn es ein fin gibt soll er dieses auslesen wenn nur app dann app

vielen dank


madp schrieb am 08.06.2005 um 14:54

Sorry versteh ich nicht. Wie schaut die genaue Tabellendefinition aus?

Sind app und fin zwei unterschiedliche Spalten, oder wie?


mat schrieb am 08.06.2005 um 15:06

post mal die tablestruktur, sowie sql version.


retro schrieb am 08.06.2005 um 15:39

app und fin sind in einer spalte und einem objekt zugeordnet
das objekt kann status app haben und status fin


das ganze wird dann in einer exel liste ausgelesen nur schreibt er es in die exel liste 2x einmal mit app und einmal mit fin ....

ich möchte aber wenn es fin gibt das er nur fin hinschreibt und nicht beides


mat schrieb am 08.06.2005 um 15:48

bin ich der einzige der keinen dunst hat was du meinst? :D


DKCH schrieb am 08.06.2005 um 15:50

WTF? :D

punkt, beistrich und satzbau wär mal ein ansatzpunkt.

mit welcher DB willst du's machen? in access zb. gibts IIf...


samuel schrieb am 08.06.2005 um 15:52

Zitat von mat
bin ich der einzige der keinen dunst hat was du meinst? :D

nope ;)


retro schrieb am 08.06.2005 um 16:01

Ich geb mal ein bsp an:

Projekt1 hat einen Bericht a bekommt also status app
Projekt1 hat bekommt aber auch einen Abschlussbericht status fin

das wird dann in eine exel datei exportiert dort steht untereinander Projekt1 mit status app und projekt a mit status fin ich will aber das es mir wenn es einen status fin gibt nur diesen anzeigt ...


derelict schrieb am 08.06.2005 um 16:31

Ich versteh was gemeint ist.
Das Problem hierbei ist, dass deine Tabelle keine Datenstruktur im rationalen Sinn ist.

Du musst die Tabelle splitten, in einen Project_Index, der auf die jeweils aktuellen Projektdaten verlinken.

Alte Struktur:

Code:
Table project
projectid | status | data ...
-----------------------------
1         |    fin | .....
1         |    app | .....
2         |    app | .....
3         |    app | .....

Neue Struktur:

Code:
Table project
projectid | status | history_data_id
-----------------------------
1         |    fin | 2
2         |    app | 3
3         |    app | 4

Table projecthistory
id | projectid | status | data ....
----------------------------------
1  | 1         | app
2  | 1         | fin
3  | 2         | app
4  | 3         | app

Diesen Index kannst du natürlich auch über subselects/views aufbauen, das unterstützt aber nicht jedes SQL, und es ist aus performance-sicht nicht zu empfehlen.


retro schrieb am 09.06.2005 um 03:58

dankeschön habs geschafft




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025