Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > PHP/MySQL

PHP/MySQL Alles rund um die Programmiersprache PHP sowie MySQL.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26887, Antworten: 4218
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3321, Antworten: 122
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 299, Antworten: 19
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7635, Antworten: 185
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 19, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 20, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 54, Antworten: 6
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 144, Antworten: 9
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 69, Antworten: 4
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50939, Antworten: 1395
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01.05.2011, 12:04   #1 (Direktlink)
War schon mal da
 
Registriert seit: 31.12.2005
Beiträge: 34
Standard Mysql "IST NOT NULL" funktioniert nicht

Hallo Forum,
ich möchte gerne eine Abftage erstellen in der mir jene Datensätze nicht leerer Zellen angezeigt werden..
Also die Datensätze beinhalten
Unternehmen
Vorname
Nachname
Straße

da nicht alle Datensätze bei Unternehmen einen Eintrag haben, möchte ich nur jene Anzeigen lassen die auch einen Unternehmensnamen beinhaltelten.. ich komme mit dem Befehl IST NOT NULL nicht zu rande, das hat bei meiner Abfrage keine Auswirkung, es werden sowohl leere als auch nicht leere Zellen angezeigt
Danach hab ich, wie im Beispiel unten angeführt probiert nur solche Unternehmen anzuzeigen wo ein H vorkommt. auch ohne Ergebnis.
Ich verwende MYSQL4, 4.1.22

PHP-Code:
mysql_select_db$database$db ) || die("Konnte die Database $database nichts auswählen!");
   
$result mysql_query("SELECT `mitglieder_unternehmen` ,
   `mitglieder_vorname` ,
   `mitglieder_nachname` ,
`mitglieder_strasse` ,
FROM mitglieder 
WHERE mitglied_austritt='0000-00-00' AND  `mitglieder_unternehmen`='H%'
ORDER BY ``mitglieder_nachname` "
); 
Bedanke mich im Voraus für eure Hilfe

Gruuß
Stefan
stefan_sbg ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 01.05.2011, 14:07   #2 (Direktlink)
Ist öfter hier
 
Benutzerbild von Grandhanate
 
Registriert seit: 10.11.2007
Beiträge: 94
Standard

Hallo,

zu deinem ersten Problem: es sollte heißen 'IS NOT NULL' anstatt 'IST NOT NULL'.

z. B.: SELECT * FROM users WHERE first_name IS NOT NULL;

(Sollte der Schreibfehler nichts damit zu tun haben, solltest du prüfen, ob die Einträge in der Datenbank wirklich NULL sind, oder doch leere strings.

Wenn du abfragen möchtest, ob ein Eintrag mit 'H' beginnt, benötigst du statt '=' den LIKE-Operator.

z. B.: SELECT * FROM users WHERE first_name LIKE 'H%';

Sollte ich mich irren, bitte korrigieren

Gruß Grandhanate
Grandhanate ist offline   Mit Zitat antworten
Alt 01.05.2011, 15:59   #3 (Direktlink)
War schon mal da
 
Registriert seit: 31.12.2005
Beiträge: 34
Standard is not null

Zitat:
Zitat von Grandhanate Beitrag anzeigen
Hallo,
z. B.: SELECT * FROM users WHERE first_name LIKE 'H%';
das hat schon mal sehr gut funktioniert, danke. IS NOT NULL war beim Posten ein Schreibfehler von mir.
Jetzt hast du mir schon sehr geholfen. Nur möchte ich anstelle des Like H jeden Datensatz angezeigt bekommen der nicht leer ist, wo also ein Name drinsteht. Bin bis jetzt noch nicht fündig geworden Like 'A-Z' funktioniert ebensowenig wie 'a-A-Z-z'

Hoffe es kann mir jemand meinen Knoten lösen...
Gruß
Stefan
stefan_sbg ist offline   Mit Zitat antworten
Alt 01.05.2011, 17:19   #4 (Direktlink)
Ist öfter hier
 
Benutzerbild von Grandhanate
 
Registriert seit: 10.11.2007
Beiträge: 94
Standard

Also mit LIKE auf einen Bereich zwischen A - Z ist nicht der rechte Weg (wenn es denn überhaupt funktioniert ).

Für mich hört sich das so an, als wären deine Einträge zum Teil nicht NULL, sondern leere Strings. Diese müsstest du dann in etwa so abfangen:

SELECT * FROM users WHERE first_name IS NOT NULL AND first_name != '';

(Bei den Zeichen vor dem Semikolon handelt es sich um zwei ' Zeichen.)

Gruß Grandhanate
Grandhanate ist offline   Mit Zitat antworten
Alt 01.05.2011, 17:50   #5 (Direktlink)
War schon mal da
 
Registriert seit: 31.12.2005
Beiträge: 34
Standard

Zitat:
SELECT * FROM users WHERE first_name IS NOT NULL AND first_name != '';
super, hab dann das not null gleich ganz weggelassen und nur first_name != ''; genommen.
Ergebnis: genau so wie ich es brauche
Vielen Dank und noch einen schönen Sonntag
Stefan
stefan_sbg ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 01.05.2011, 17:59   #6 (Direktlink)
Ist öfter hier
 
Benutzerbild von Grandhanate
 
Registriert seit: 10.11.2007
Beiträge: 94
Standard

Wenn dein Feld NULLABLE ist, also null sein kann, dann solltest du die Prüfung IS NOT NULL dennoch vornehmen. Andernfalls könntest du bei der Weiterverarbeitung der Daten Probleme bekommen - beispielsweise, wenn du versuchst den Namen ab einer gewissen Länge abzuschneiden.
Grandhanate ist offline   Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > PHP/MySQL

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen 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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
"Der Anzeigetreiber nvlddmkm funktioniert nicht mehr und wurde wiederhergestellt." Unregistriert Hardware - Problemlösungen 7 20.09.2011 06:20
Wlan funktioniert beim "kaltstart "nicht.erst nach CarlFC Netzwerke 0 12.11.2007 10:50
"Mein eBay" funktioniert aufeinmal nicht mehr...Bi Babsi Allgemein 6 14.12.2005 01:08
"Persönliche Einstellungen auf Null gesetzt" SleIb... Windows XP 13 13.10.2005 16:27



Alle Zeitangaben in WEZ +2. Es ist jetzt 02:37 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2