Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Bestimmte Zahl / Wort aus einer Spalte ausblenden

Begonnen von Kloso, Oktober 20, 2016, 16:08:21

⏪ vorheriges - nächstes ⏩

Kloso

Hallo Freunde, wie kann man am einfachsten ein bestimmtes Wort oder eine Zahl aus einer Spalte ausblenden lassen

Bsp. Ich habe eine Spalte in der die Zahlen von 0 bis X aufgelistet Sind und ich möchte dass die 0 da nicht mit angezeigt wird.

Im prinzip müsse es ja nur ein WHERE anweisung sein. Ich habe jetzt folgendes probiert

WHERE NOT(Tabelle.Spalte = ,,0")
Oder
WHERE (NOT(Tabelle.Spalte = ,,0"))


Aber es funktioniert leider nicht.

Liebe Grüße Kloso
Viele Grüße Kloso

MzKlMu

#1
Hallo,
die Where Klausel wirkt sich aber immer auf komplette Datensätze aus.
... WHERE Spalte <> 0
Das filtert aber die DS, das heißt, die DS mit der 0 werden erst gar nicht angezeigt.

Gruß Klaus

Beaker s.a.

Hallo Kloso,
Wozu steht die 0 denn überhaupt da drin, wenn du die nicht sehen willst?
Falls du mit diesem Feld rechnen willst, würde ich das Feld leer (NULL) lassen,
und mir den Wert (0) mit Nz(Feld, 0) holen.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Kloso

#3
Hallo Ekkehard, es geht darum dass die spalte mir zahlen im bezug auf ne andere Spalte anzeigt. Da sind viele verschiedene Zahlen und ab und zu taucht da eine 0 auf weil in der anderen Spalte eine Bedinung nicht erfüllt ist. Und deswegen war das Ziel diese Zeigen wo die 0 Auftaucht auszublenden.
Habe eben mit
WHERE FeldName < > 0 Probiert aber er sieht es als ein Parameter an und fragt mich dann nach einer Eingabe.
Und mit WHERE Nz(FeldName, 0) fordert er mich auch auf den "FeldNamen" einzugeben

Gruß Kloso
Viele Grüße Kloso

Kloso

Habs jetzt etwas anders die Aufgabe etwas vorangetrieben:
SELECT IIF(Len(FeldName)=11,Len(FeldName),Nz) AS Gesamt
Nun zeigt er mir zwar die anzahl der Zeichen im "FeldName" unzwar nur bei denen die genaue 11 haben. Ok. Die andere anzahl haben tut er jetzt einfach leer stehen lassen beim "Gesamt", wenn ich anstatt "Nz" - eine "0" schreibe dann zeigt er die null, aber wie kann ich die zeilen die das kreterium nicht erfüllen (also die nicht 11 zeichen haben) einfach dann ausblenden lassen?
Habe es auch mit IIF(Len(search_term)=11,Len(search_term),NOT) probiert aber war auch falsch.

Liebe Grüße Kloso
Viele Grüße Kloso

MzKlMu

Hallo,
reichlich verworren. Was willst Du jetzt mit der Prüfung auf Länge (Len) auf 11 wenn Du die 0 suchst ?

Und für Feldname musst Du natürlich den bei Dir vorhanden Feldnamen angeben.

Nach welchem Parameter wird denn gefragt ?
Und hier ist ein Leerzeichen zu viel.
WHERE FeldName < > 0
Versuche es mal so (ist ohnehin besser):
WHERE FeldName > 0
Gruß Klaus

Kloso

#6
Zitat von: MzKlMu am Oktober 21, 2016, 10:32:53
Hallo,
reichlich verworren. Was willst Du jetzt mit der Prüfung auf Länge (Len) auf 11 wenn Du die 0 suchst ?

Und für Feldname musst Du natürlich den bei Dir vorhanden Feldnamen angeben.

Nach welchem Parameter wird denn gefragt ?
Und hier ist ein Leerzeichen zu viel.
WHERE FeldName < > 0
Versuche es mal so (ist ohnehin besser):
WHERE FeldName > 0

Hallo, tut mir leid für die verwirrung, es ist eine große tabelle und bei bestimmten Spalte überprüfe ich ob die zahlen 11 Zeichenlang sind, wenn ja soll die ganze zeile angezeigt werden, wenn nicht soll die ausgeblendet werden. Mit der IF anweisung sehe ich in einer extra spalte welche werte 11 zeichen haben der rest(1, 4, 20...) Zeichen werden in meiner Extra spalte dann mit 0 angezeigt.  Ziel ist es dann diese automatisch auszublenden und garnicht angezeigt zu bekommen.
Wahrscheinilch gibt es einen viel besseren und einfacheren Ansatz, habe wohl den schwierigeren genommen.

Ich habe natürlich die Feldernamen bei mir auf meine Umbenannt. :)

Und mit dem Code
WHERE FeldName > 0
Bittet er mich dann bei der Ausführung "FeldNamen" einzugeben.

Habe gedacht ich kann dann bei der IIF anweisung es bereits so eintragen dass er die gleich ausblendet.
SELECT IIF(Len(FeldName)=11,Len(FeldName),Nz) AS Gesamt
dachte es klappt mit Nz aber Nz tut einfach nur das feld leer stehen aber nicht ausblenden.

Tut mir leid für die Verwirrung.
Liebe Grüße


Viele Grüße Kloso

Kloso

PS: Handlich geht es halt wenn man auf der Spalte auf "Number Filter" - "Does not equal" - und "0" eingeben. Dann blendet er die aus. Also ist das Ziel das selbe nur mit SQL zu machen.

Gruß
Viele Grüße Kloso

MzKlMu

Hallo,
noch verwirrender, ich dachte Du wolltest die Zeilen mit 0 ausblenden.
Was willst Du jetzt mit der Zeichenzahl ?
warum zeigst Du nicht die Formeln so wie Du diese einsetzt, also mit den richtigen Feldnamen ?
Zeige bitte mal den vollständigen SQL Text der Abfrage.

PS:
Bitte keine vollständigen Beiträge zitieren. Ich lösche diese ohnehin meistens wieder.
Die verlängern unnötigerweise nur die Themen auf mehrere Seiten.


Gruß Klaus

Kloso

Ok, habs dazu gelernt mit zitieren.

SELECT Tabelle.*, IIF(Len(Feld)=11,Len(Feld),0) AS Gesamt
FROM Tabelle
WHERE ((IIf(IsNumeric([Feld])=0,"Wort","Zahl"))='Zahl') AND ((Format([Tabelle.Datumsfeld],"mm\.yyyy"))=[Geben Sie das Datum wie folgt ein: mm punkt yyyy]);

Erklärung: Setze das Datum fest. Dann Analysiere Feld auf Zahl oder Wort, wenn Zahl dann zähle die Zeichen und wenn Zeichen = 11 dann zeige mir die Zeile an wenn nicht dann blende sie aus.

So müsste es sein. Gruß
Viele Grüße Kloso

MzKlMu

Hallo,
wenn der händisch eingetragene Filter funktioniert, brauchst Du doch die Länge nicht.
SELECT * FROM Tabelle
WHERE [Feld]> 0 AND ((Format([Datumsfeld],"mm\.yyyy"))=[Geben Sie das Datum wie folgt ein: mm punkt yyyy])

Gruß Klaus

Kloso

Danke, es hat einigermaßen geklappt.

Viele Grüße Kloso
Viele Grüße Kloso

MzKlMu

Hallo,
was muss man sich unter "einigermaßen" vorstellen, entweder es klappt oder es klappt nicht. Einigermaßen gibt es nicht in einer Datenbank.
Gruß Klaus

Kloso

Viele Grüße Kloso