SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 23.10.2006, 23:48:48
Haintz Haintz ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 6
Suche in Array

Hallo,
ich habe folgendes Problem: in einer MYSQL-Datenbank habe ich in einem Feld (feldarray) Daten in einem Array gespeichert. Nun möchte ich alle Datensätze danach durchsuchen, ob in diesem Feld (bzw. dem jeweiligen Array) ein bestimmter Begriff vorkommt, und dann die Zahl dieser Vorkommnisse ausgeben.
Ich versuche es über eine SELECT-Abfrage, komme damit aber nicht weiter:

$query = "SELECT * FROM tabelle WHERE feldarray = 'Begriff'";

$sql = mysql_query($query);
$ergebnis = mysql_num_rows($sql);

Danke,

Haintz
Mit Zitat antworten
  #2  
Alt 24.10.2006, 00:27:48
chris17 chris17 ist offline
Senior Member
 
Registriert seit: Apr 2003
Alter: 57
Beiträge: 1.236
AW: Suche in Array

Hi,
Zitat:
Zitat von Haintz
habe ich in einem Feld (feldarray) Daten in einem Array gespeichert.
Feldarray? Welchen Feldtyp hast Du genau genommen? SET?

Zitat:
Zitat von MySQL
SELECT * FROM tbl_name WHERE FIND_IN_SET('value',set_col)>0;

SELECT * FROM tbl_name WHERE set_col LIKE '%value%';
http://dev.mysql.com/doc/refman/5.1/de/set.html
Mit Zitat antworten
  #3  
Alt 24.10.2006, 00:37:56
Haintz Haintz ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 6
AW: Suche in Array

Die Bezeichnung "Feldarray" habe ich nur verwendet, um klarzumachen, dass es sich um ein Feld handelt, in dem ein Array abgelegt ist. Der Feldtyp ist "Blob".

Haintz

Geändert von Haintz (24.10.2006 um 01:01:02 Uhr)
Mit Zitat antworten
  #4  
Alt 24.10.2006, 06:02:12
chris17 chris17 ist offline
Senior Member
 
Registriert seit: Apr 2003
Alter: 57
Beiträge: 1.236
AW: Suche in Array

Ich gehe davon aus, dass Du das Array serialisiert in der DB abgelegt hast.
Teste mal sowas in der Art:
Code:
$sql = "SELECT
	    COUNT(*) AS anz
	FROM
	    tbl_tabelle
	WHERE
	    feld
	LIKE
	    '%$such_begriff%'";
Warum speicherst Du Arrays als BLOB?

Christian
Mit Zitat antworten
  #5  
Alt 24.10.2006, 11:11:04
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Suche in Array

Warum speicherst du überhaupt Arrays in einer Datenbank? Normalisiere lieber die Datenbankstruktur, so dass sich dein Problem über einfache Vergleiche lösen lässt.
Mit Zitat antworten
  #6  
Alt 25.10.2006, 21:43:08
Haintz Haintz ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 6
AW: Suche in Array

@chris 17: Array ist serialisiert abgelegt. Die vorgeschlagene SELECT-Abfrage funktioniert leider nicht. Ich hatte vermutet, dass ich das Feld mit "unserialize" bearbeiten muss, bevor eine Suche funktioniert, was aber wohl innerhalb der Abfrage nicht geht (oder?). Ich vermute außerdem, dass die Suche ziemlich lange dauern würde... :-(

@: xabbuh
Mir erschien es einfacher, direkt arrays abzulegen. Ich kann die Ergebnisse von Ankreuzfeldern aus einem Formular direkt in die Tabelle schreiben. Tatsächlich bestücke ich die Ankreuzfelder des Formulars bereits dynamisch aus einer Kriterientabelle.
Und nun im Zusammenhang mit Abfragen die Frage nach dem normalisieren der Datenbank, mhh...
Dann bekomme ich eine zusätzliche Tabelle, sehe ich das richtig? Eine Tabelle, in der die "Verknüpfungen" zwischen Haupt- und Ausprägungstabelle gespeichert werden?


Haintz
Mit Zitat antworten
  #7  
Alt 25.10.2006, 22:19:09
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Suche in Array

Zitat:
Zitat von Haintz Beitrag anzeigen
Ich hatte vermutet, dass ich das Feld mit "unserialize" bearbeiten muss, bevor eine Suche funktioniert, was aber wohl innerhalb der Abfrage nicht geht (oder?). Ich vermute außerdem, dass die Suche ziemlich lange dauern würde... :-(
Du vermutest falsch, weil MySQL kein unserialize() kennt.

Zitat:
@: xabbuh
Mir erschien es einfacher, direkt arrays abzulegen. Ich kann die Ergebnisse von Ankreuzfeldern aus einem Formular direkt in die Tabelle schreiben. Tatsächlich bestücke ich die Ankreuzfelder des Formulars bereits dynamisch aus einer Kriterientabelle.
Und nun im Zusammenhang mit Abfragen die Frage nach dem normalisieren der Datenbank, mhh...
Suche im MySQL nach dem Spaltentyp SET. Falls Du es verstanden hast:
mit diesem Spaltentyp bist Du in der Lage, die Ergebnisse von (Beispiel) 64 ja/nein Ckeckboxen zu speichern und in der Tabelle zu suchen (FIND_IN_SET() ).
Mit Zitat antworten
Antwort


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

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 aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrdimensionales Array sortieren MrLongbaugh PHP Grundlagen 10 06.03.2008 12:02:47
Probleme mit löschen aus Array Generator PHP Grundlagen 5 29.08.2006 16:11:59
array im array SolidBody PHP Grundlagen 3 20.07.2006 13:38:41
Kleines Problem mit Array Thomapyrien PHP Grundlagen 2 18.09.2005 20:07:46
Einzelne Daten aus Textdatei Auslesen azubinator PHP Grundlagen 153 17.12.2004 13:36:58


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:41:51 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt