Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-06-29 Diskussionsfäden David Greiner
Hi dirk! Ja ich bin damit fertig geworden. Das resultat kann ich dir leider 
erst am kommenden donnerstag übermitteln, da ich da erst wieder in der agentur 
bin. Gruß, david.

Dirk Wenzel wen...@webfox03.de schrieb:

Hallo David,
heute steh ich vor der gleichen Aufgabe.
Hast Du den alphabetischen Index fertig umgesetzt. Könntest Du Deine 
Ergebnisse irgenwo posten (github z.B.)?

Herzliche Grüße
Dirk

Am 09.04.13 10:34, schrieb David Greiner:
 Hallo Liste und MySQL-Profis!

 Ich sitze gerade vor der Aufgabe, für eine Newsliste (tx_news) eine 
 alphabetische Filterung umzusetzen. Die News-Extension entsprechend zu 
 erweitern, dass nur noch News ausgegeben werden derer Titel mit einem 
 bestimmten Buchstaben beginnen, ist nicht weiter schwer.
 Herausfordernder ist es, eine Datenbank-Query zu entwerfen, die überprüft, 
 ob die Auswahl eines Buchstabens ein Ergebnis zu erwarten hat oder nicht. 
 Diese Query benötige ich, um in der Filteransicht auch nur die jenigen 
 Buchstaben zu verlinken, die ein Ergebnis erwarten. Alle anderen sollen 
 ausgegraut sein.

 Vermutlich werde ich eine solche Query nicht mit Extbase-Bordmitteln 
 umsetzen können und werde auf $query-statement(...) zurückgreifen müssen, 
 das ist aber nicht schlimm.
 Bestenfalls erhalte ich im Result eine temporäre Spalte (z.B. hasResult) die 
 in Abhängigkeit vom getesteten Buchstaben eine 1 oder 0 enthält. Somit 
 könnte ich beim Rendern der alphabetischen Filterleiste mit Fluid über eine 
 Condition entscheiden ob ein Buchstabe aktiv/inaktiv sein soll.

 Kann mir jemand eine Query oder eine grobe Richtung dafür vorschlagen?

 Viele Grüße, David.


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-06-28 Diskussionsfäden Dirk Wenzel

Hallo David,
heute steh ich vor der gleichen Aufgabe.
Hast Du den alphabetischen Index fertig umgesetzt. Könntest Du Deine 
Ergebnisse irgenwo posten (github z.B.)?


Herzliche Grüße
Dirk

Am 09.04.13 10:34, schrieb David Greiner:

Hallo Liste und MySQL-Profis!

Ich sitze gerade vor der Aufgabe, für eine Newsliste (tx_news) eine 
alphabetische Filterung umzusetzen. Die News-Extension entsprechend zu 
erweitern, dass nur noch News ausgegeben werden derer Titel mit einem 
bestimmten Buchstaben beginnen, ist nicht weiter schwer.
Herausfordernder ist es, eine Datenbank-Query zu entwerfen, die überprüft, ob 
die Auswahl eines Buchstabens ein Ergebnis zu erwarten hat oder nicht. Diese 
Query benötige ich, um in der Filteransicht auch nur die jenigen Buchstaben zu 
verlinken, die ein Ergebnis erwarten. Alle anderen sollen ausgegraut sein.

Vermutlich werde ich eine solche Query nicht mit Extbase-Bordmitteln umsetzen können und 
werde auf $query-statement(...) zurückgreifen müssen, das ist aber nicht 
schlimm.
Bestenfalls erhalte ich im Result eine temporäre Spalte (z.B. hasResult) die in 
Abhängigkeit vom getesteten Buchstaben eine 1 oder 0 enthält. Somit könnte ich 
beim Rendern der alphabetischen Filterleiste mit Fluid über eine Condition 
entscheiden ob ein Buchstabe aktiv/inaktiv sein soll.

Kann mir jemand eine Query oder eine grobe Richtung dafür vorschlagen?

Viele Grüße, David.



___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden Eike Starkmann

Hallo David,

es gibt da im Prinzip zwei Möglichkeiten:

1. Ein eigenes Statement, wie du schon vorgeschlagen hast.
Dann wäre sowas wie SELECT * FROM table WHERE field LIKE a% OR LIKE A% 
dein Freund. Nachteil ist, das du nicht mehr FLOW kompatibel bist.


2. Möglichkeit mit Extbase alle Daten hohlen und in ein Array speichern.
$this-defaultQuerySettings-setReturnRawQueryResult(TRUE); Damit 
bekommst du eine Array-Ergebnisliste zurück. Auf dieser kannst du dann 
arbeiten. Nachteil unnötig großes Array und Query.



Bis denne, Eike





On 09.04.2013 10:34, David Greiner wrote:

Hallo Liste und MySQL-Profis!

Ich sitze gerade vor der Aufgabe, für eine Newsliste (tx_news) eine 
alphabetische Filterung umzusetzen. Die News-Extension entsprechend zu 
erweitern, dass nur noch News ausgegeben werden derer Titel mit einem 
bestimmten Buchstaben beginnen, ist nicht weiter schwer.
Herausfordernder ist es, eine Datenbank-Query zu entwerfen, die überprüft, ob 
die Auswahl eines Buchstabens ein Ergebnis zu erwarten hat oder nicht. Diese 
Query benötige ich, um in der Filteransicht auch nur die jenigen Buchstaben zu 
verlinken, die ein Ergebnis erwarten. Alle anderen sollen ausgegraut sein.

Vermutlich werde ich eine solche Query nicht mit Extbase-Bordmitteln umsetzen können und 
werde auf $query-statement(...) zurückgreifen müssen, das ist aber nicht 
schlimm.
Bestenfalls erhalte ich im Result eine temporäre Spalte (z.B. hasResult) die in 
Abhängigkeit vom getesteten Buchstaben eine 1 oder 0 enthält. Somit könnte ich 
beim Rendern der alphabetischen Filterleiste mit Fluid über eine Condition 
entscheiden ob ein Buchstabe aktiv/inaktiv sein soll.

Kann mir jemand eine Query oder eine grobe Richtung dafür vorschlagen?

Viele Grüße, David.
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german




--
EIKE STARKMANN
 starkm...@undkonsorten.com
 +49.30.20236354 [fon]

UNDKONSORTEN GBR
 Waldemarstr. 38
 10999 Berlin

 www.undkonsorten.com
 +49.30.20236354 [fon]
 +49.30.20236354-9 [fax]

 thomas alboth, felix althaus + jochen biedermann  [gesellschafter]
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden David Greiner
Hi Eike!
 
Danke für deine Antwort. Ich glaube ich hab mich ein wenig kompliziert 
ausgedrückt.
Zu deinem Punkt 1)
Das ist ja mit Extbase ohne Problem möglich. Z.B. durch $query-like('field', 
$alphafilter.'%');
 
Zu deinem Punkt 2)
Auch das ist mir bekannt. Trotzdem danke dafür.
 
Was ich erreichen will, ist eine Ausgabe, die mir sagt, ob es News-Einträge 
gibt die mit A, B, C usw. beginnen, oder nicht.
Ich habe nun eine Query die wahrscheinlich nicht sehr performant ist. Zudem 
wird für jeden Buchstaben eine Query durchgeführt.
 
-

SELECT l.`letter` , IF( fc.`first_char` IS NULL , 0, 1 ) AS `was_found`
                FROM (
                    SELECT 'A' AS `letter`
                    UNION SELECT 'B'
                    UNION SELECT 'C'
                    UNION SELECT 'D'
                    UNION SELECT 'E'
                    UNION SELECT 'F'
                    UNION SELECT 'G'
                    UNION SELECT 'H'
                    UNION SELECT 'I'
                    UNION SELECT 'J'
                    UNION SELECT 'K'
                    UNION SELECT 'L'
                    UNION SELECT 'M'
                    UNION SELECT 'N'
                    UNION SELECT 'O'
                    UNION SELECT 'P'
                    UNION SELECT 'Q'
                    UNION SELECT 'R'
                    UNION SELECT 'S'
                    UNION SELECT 'T'
                    UNION SELECT 'U'
                    UNION SELECT 'V'
                    UNION SELECT 'W'
                    UNION SELECT 'X'
                    UNION SELECT 'Y'
                    UNION SELECT 'Z'
                    )l
                LEFT JOIN (
                    SELECT x.`first_char`
                    FROM (
                        SELECT REPLACE( REPLACE( REPLACE( UPPER( SUBSTRING( 
`title` , 1, 1 ) ) , 'Ä', 'A' ) , 'Ü', 'U' ) , 'Ö', 'O' ) AS `first_char`
                        FROM tx_news_domain_model_news
                        WHERE `title` IS NOT NULL
                        AND `title` != ''
                    )x
                    WHERE x.`first_char` IS NOT NULL
                    GROUP BY x.`first_char`
                    )fc ON l.`letter` = fc.`first_char` 

-
 
Gruß, David.
 

Gesendet: Dienstag, 09. April 2013 um 13:54 Uhr
Von: Eike Starkmann starkm...@undkonsorten.com
An: German TYPO3 Userlist typo3-german@lists.typo3.org
Betreff: Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query
Hallo David,

es gibt da im Prinzip zwei Möglichkeiten:

1. Ein eigenes Statement, wie du schon vorgeschlagen hast.
Dann wäre sowas wie SELECT * FROM table WHERE field LIKE a% OR LIKE A%
dein Freund. Nachteil ist, das du nicht mehr FLOW kompatibel bist.

2. Möglichkeit mit Extbase alle Daten hohlen und in ein Array speichern.
$this-defaultQuerySettings-setReturnRawQueryResult(TRUE); Damit
bekommst du eine Array-Ergebnisliste zurück. Auf dieser kannst du dann
arbeiten. Nachteil unnötig großes Array und Query.


Bis denne, Eike





On 09.04.2013 10:34, David Greiner wrote:
 Hallo Liste und MySQL-Profis!

 Ich sitze gerade vor der Aufgabe, für eine Newsliste (tx_news) eine 
 alphabetische Filterung umzusetzen. Die News-Extension entsprechend zu 
 erweitern, dass nur noch News ausgegeben werden derer Titel mit einem 
 bestimmten Buchstaben beginnen, ist nicht weiter schwer.
 Herausfordernder ist es, eine Datenbank-Query zu entwerfen, die überprüft, ob 
 die Auswahl eines Buchstabens ein Ergebnis zu erwarten hat oder nicht. Diese 
 Query benötige ich, um in der Filteransicht auch nur die jenigen Buchstaben 
 zu verlinken, die ein Ergebnis erwarten. Alle anderen sollen ausgegraut sein.

 Vermutlich werde ich eine solche Query nicht mit Extbase-Bordmitteln umsetzen 
 können und werde auf $query-statement(...) zurückgreifen müssen, das ist 
 aber nicht schlimm.
 Bestenfalls erhalte ich im Result eine temporäre Spalte (z.B. hasResult) die 
 in Abhängigkeit vom getesteten Buchstaben eine 1 oder 0 enthält. Somit könnte 
 ich beim Rendern der alphabetischen Filterleiste mit Fluid über eine 
 Condition entscheiden ob ein Buchstabe aktiv/inaktiv sein soll.

 Kann mir jemand eine Query oder eine grobe Richtung dafür vorschlagen?

 Viele Grüße, David.
 ___
 TYPO3-german mailing list
 TYPO3-german@lists.typo3.org
 http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german



--
EIKE STARKMANN
starkm...@undkonsorten.com
+49.30.20236354 [fon]

UNDKONSORTEN GBR
Waldemarstr. 38
10999 Berlin

www.undkonsorten.com[http://www.undkonsorten.com]
+49.30.20236354 [fon]
+49.30.20236354-9 [fax]

thomas alboth, felix althaus + jochen biedermann [gesellschafter]
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german[http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german]
___
TYPO3-german mailing

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden Jan Kornblum

Hi David,

hätte noch eine unperformante Idee, die aber wahrscheinlich Extbase 
konform wäre (bin leider kein Extbase Profi, daher nur eine Idee) bzw. 
bei der du keine nativen SQL Statements verwenden müsstest:


Im Controller das Array der Buchstaben manuell bauen. Dieses dann in 
einer Schleife durchlaufen und für jeden Buchstaben das / die Objekte 
aus dem News-Repository holen und ein Flag 0/1 ins Array schreiben. 
Dann kannst du zumidnest dieses Array in Fluid ausgeben und auf den 
Status (0/1) bzw. hat Datensätze / hat keine zugreifen...


Grüße, Jan


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden Eike Starkmann

Hi David,
ok aber warum willst du das in SQL machen. Oder anders gefragt was 
möchtest du als Ergebnis bekommen?


Letter |  was_found
---
A  |   1
B  |   0
... etc. Das hier?

Ich würde das doch lieber in php machen:


result=array();

foreach(A,B,C.. as letter){
result[letter]=find(letter);
}

function find(string letter){
	number= SELCET COUNT(*) FROM tx_news_domain_model_news WHERE title LIKE 
letter%

}

Der Code ist als Idee zu verstehen ;-)

Bis denne, Eike



On 09.04.2013 14:37, David Greiner wrote:

Hi Eike!

Danke für deine Antwort. Ich glaube ich hab mich ein wenig kompliziert 
ausgedrückt.
Zu deinem Punkt 1)
Das ist ja mit Extbase ohne Problem möglich. Z.B. durch $query-like('field', 
$alphafilter.'%');

Zu deinem Punkt 2)
Auch das ist mir bekannt. Trotzdem danke dafür.

Was ich erreichen will, ist eine Ausgabe, die mir sagt, ob es News-Einträge 
gibt die mit A, B, C usw. beginnen, oder nicht.
Ich habe nun eine Query die wahrscheinlich nicht sehr performant ist. Zudem 
wird für jeden Buchstaben eine Query durchgeführt.

-

SELECT l.`letter` , IF( fc.`first_char` IS NULL , 0, 1 ) AS `was_found`
 FROM (
 SELECT 'A' AS `letter`
 UNION SELECT 'B'
 UNION SELECT 'C'
 UNION SELECT 'D'
 UNION SELECT 'E'
 UNION SELECT 'F'
 UNION SELECT 'G'
 UNION SELECT 'H'
 UNION SELECT 'I'
 UNION SELECT 'J'
 UNION SELECT 'K'
 UNION SELECT 'L'
 UNION SELECT 'M'
 UNION SELECT 'N'
 UNION SELECT 'O'
 UNION SELECT 'P'
 UNION SELECT 'Q'
 UNION SELECT 'R'
 UNION SELECT 'S'
 UNION SELECT 'T'
 UNION SELECT 'U'
 UNION SELECT 'V'
 UNION SELECT 'W'
 UNION SELECT 'X'
 UNION SELECT 'Y'
 UNION SELECT 'Z'
 )l
 LEFT JOIN (
 SELECT x.`first_char`
 FROM (
 SELECT REPLACE( REPLACE( REPLACE( UPPER( SUBSTRING( 
`title` , 1, 1 ) ) , 'Ä', 'A' ) , 'Ü', 'U' ) , 'Ö', 'O' ) AS `first_char`
 FROM tx_news_domain_model_news
 WHERE `title` IS NOT NULL
 AND `title` != ''
 )x
 WHERE x.`first_char` IS NOT NULL
 GROUP BY x.`first_char`
 )fc ON l.`letter` = fc.`first_char` 

-

Gruß, David.


Gesendet: Dienstag, 09. April 2013 um 13:54 Uhr
Von: Eike Starkmann starkm...@undkonsorten.com
An: German TYPO3 Userlist typo3-german@lists.typo3.org
Betreff: Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query
Hallo David,

es gibt da im Prinzip zwei Möglichkeiten:

1. Ein eigenes Statement, wie du schon vorgeschlagen hast.
Dann wäre sowas wie SELECT * FROM table WHERE field LIKE a% OR LIKE A%
dein Freund. Nachteil ist, das du nicht mehr FLOW kompatibel bist.

2. Möglichkeit mit Extbase alle Daten hohlen und in ein Array speichern.
$this-defaultQuerySettings-setReturnRawQueryResult(TRUE); Damit
bekommst du eine Array-Ergebnisliste zurück. Auf dieser kannst du dann
arbeiten. Nachteil unnötig großes Array und Query.


Bis denne, Eike





On 09.04.2013 10:34, David Greiner wrote:

Hallo Liste und MySQL-Profis!

Ich sitze gerade vor der Aufgabe, für eine Newsliste (tx_news) eine 
alphabetische Filterung umzusetzen. Die News-Extension entsprechend zu 
erweitern, dass nur noch News ausgegeben werden derer Titel mit einem 
bestimmten Buchstaben beginnen, ist nicht weiter schwer.
Herausfordernder ist es, eine Datenbank-Query zu entwerfen, die überprüft, ob 
die Auswahl eines Buchstabens ein Ergebnis zu erwarten hat oder nicht. Diese 
Query benötige ich, um in der Filteransicht auch nur die jenigen Buchstaben zu 
verlinken, die ein Ergebnis erwarten. Alle anderen sollen ausgegraut sein.

Vermutlich werde ich eine solche Query nicht mit Extbase-Bordmitteln umsetzen können und 
werde auf $query-statement(...) zurückgreifen müssen, das ist aber nicht 
schlimm.
Bestenfalls erhalte ich im Result eine temporäre Spalte (z.B. hasResult) die in 
Abhängigkeit vom getesteten Buchstaben eine 1 oder 0 enthält. Somit könnte ich 
beim Rendern der alphabetischen Filterleiste mit Fluid über eine Condition 
entscheiden ob ein Buchstabe aktiv/inaktiv sein soll.

Kann mir jemand eine Query oder eine grobe Richtung dafür vorschlagen?

Viele Grüße, David.
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german




--
EIKE

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden David Greiner
Hi Eike, hi Jan!
 
@Jan:
Deine weitere unperformante Idee hatte ich auch erst im Kopf. Entschied mich 
dann aber doch, das ganze direkt über SQL zu lösen. Ich glaub von den 
unperformanten Lösungen ist dies noch die perfomanteste ;)
Über $query-getQuerySettings()-setReturnRawQueryResult( TRUE ) ; kann ich 
letztlich auch im Fluid auf den Status (1/0) aus meiner Query zugreifen. 
Mittlerweile funktioniert alles so wie es soll, nur bin ich Fan davon, Code bei 
dem ich mir nicht sicher bin, zu optimieren.
 
@Eike:
Genau das möchte ich als Ergebnis bekommen, und bekomme ich auch schon. 
Richtig. Damit kann ich jetzt im Fluid folgendes abfackeln:
 
f:for each={alphas} as=alpha iteration=alphaIterator
 f:if condition={alpha.was_found} == 1
  f:then
f:link.page additionalParams={tx_news_pi1:{alphafilter: 
alpha.letter}}{alpha.letter}/f:link.page
  /f:then
  f:else
   {alpha.letter}
  /f:else
 /f:if
/f:for

was mir auch eine korrekte Anzeige liefert.

Das ganze funktioniert also, ist aber nicht schön (oder doch???). Daher hatte 
ich gehofft, dass mir jemand bei einer perfomanteren SQL-Query behilflich sein 
könnte.


Gruß, David.


Gesendet: Dienstag, 09. April 2013 um 14:55 Uhr
Von: Eike Starkmann starkm...@undkonsorten.com
An: German TYPO3 Userlist typo3-german@lists.typo3.org
Betreff: Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query
Hi David,
ok aber warum willst du das in SQL machen. Oder anders gefragt was
möchtest du als Ergebnis bekommen?

Letter | was_found
---
A | 1
B | 0
... etc. Das hier?

Ich würde das doch lieber in php machen:


result=array();

foreach(A,B,C.. as letter){
result[letter]=find(letter);
}

function find(string letter){
number= SELCET COUNT(*) FROM tx_news_domain_model_news WHERE title LIKE
letter%
}

Der Code ist als Idee zu verstehen ;-)

Bis denne, Eike



On 09.04.2013 14:37, David Greiner wrote:
 Hi Eike!

 Danke für deine Antwort. Ich glaube ich hab mich ein wenig kompliziert 
 ausgedrückt.
 Zu deinem Punkt 1)
 Das ist ja mit Extbase ohne Problem möglich. Z.B. durch $query-like('field', 
 $alphafilter.'%');

 Zu deinem Punkt 2)
 Auch das ist mir bekannt. Trotzdem danke dafür.

 Was ich erreichen will, ist eine Ausgabe, die mir sagt, ob es News-Einträge 
 gibt die mit A, B, C usw. beginnen, oder nicht.
 Ich habe nun eine Query die wahrscheinlich nicht sehr performant ist. Zudem 
 wird für jeden Buchstaben eine Query durchgeführt.

 -

 SELECT l.`letter` , IF( fc.`first_char` IS NULL , 0, 1 ) AS `was_found`
 FROM (
 SELECT 'A' AS `letter`
 UNION SELECT 'B'
 UNION SELECT 'C'
 UNION SELECT 'D'
 UNION SELECT 'E'
 UNION SELECT 'F'
 UNION SELECT 'G'
 UNION SELECT 'H'
 UNION SELECT 'I'
 UNION SELECT 'J'
 UNION SELECT 'K'
 UNION SELECT 'L'
 UNION SELECT 'M'
 UNION SELECT 'N'
 UNION SELECT 'O'
 UNION SELECT 'P'
 UNION SELECT 'Q'
 UNION SELECT 'R'
 UNION SELECT 'S'
 UNION SELECT 'T'
 UNION SELECT 'U'
 UNION SELECT 'V'
 UNION SELECT 'W'
 UNION SELECT 'X'
 UNION SELECT 'Y'
 UNION SELECT 'Z'
 )l
 LEFT JOIN (
 SELECT x.`first_char`
 FROM (
 SELECT REPLACE( REPLACE( REPLACE( UPPER( SUBSTRING( `title` , 1, 1 ) ) , 'Ä', 
 'A' ) , 'Ü', 'U' ) , 'Ö', 'O' ) AS `first_char`
 FROM tx_news_domain_model_news
 WHERE `title` IS NOT NULL
 AND `title` != ''
 )x
 WHERE x.`first_char` IS NOT NULL
 GROUP BY x.`first_char`
 )fc ON l.`letter` = fc.`first_char` 

 -

 Gruß, David.


 Gesendet: Dienstag, 09. April 2013 um 13:54 Uhr
 Von: Eike Starkmann starkm...@undkonsorten.com
 An: German TYPO3 Userlist typo3-german@lists.typo3.org
 Betreff: Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query
 Hallo David,

 es gibt da im Prinzip zwei Möglichkeiten:

 1. Ein eigenes Statement, wie du schon vorgeschlagen hast.
 Dann wäre sowas wie SELECT * FROM table WHERE field LIKE a% OR LIKE A%
 dein Freund. Nachteil ist, das du nicht mehr FLOW kompatibel bist.

 2. Möglichkeit mit Extbase alle Daten hohlen und in ein Array speichern.
 $this-defaultQuerySettings-setReturnRawQueryResult(TRUE); Damit
 bekommst du eine Array-Ergebnisliste zurück. Auf dieser kannst du dann
 arbeiten. Nachteil unnötig großes Array und Query.


 Bis denne, Eike





 On 09.04.2013 10:34, David Greiner wrote:
 Hallo Liste und MySQL-Profis!

 Ich sitze gerade vor der Aufgabe, für eine Newsliste (tx_news) eine 
 alphabetische Filterung umzusetzen. Die News-Extension entsprechend zu 
 erweitern, dass nur noch News ausgegeben werden derer Titel mit einem 
 bestimmten Buchstaben beginnen, ist nicht weiter schwer.
 Herausfordernder ist es, eine Datenbank-Query zu entwerfen, die überprüft, 
 ob die Auswahl eines Buchstabens ein Ergebnis zu erwarten hat oder nicht. 
 Diese Query benötige ich, um in der Filteransicht auch nur die jenigen 
 Buchstaben zu verlinken, die ein Ergebnis erwarten. Alle anderen sollen 
 ausgegraut sein.

 Vermutlich werde ich eine solche Query nicht mit Extbase-Bordmitteln 
 umsetzen können und werde auf $query-statement(...) zurückgreifen müssen

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden Georg Ringer

Hi,

auch nicht das performanteste query, dh idealerweise das ganze cachen 
und mal nur schnell mit der pages tabelle getestet



SELECT
LEFT(title, 1) AS first_letter,
COUNT(*) AS total
FROM pages
GROUP BY first_letter
---

man muss halt noch auf groß/klein prüfen und sonderzeichen usw aber 
sonst ist das so ca das was du suchst denk ich


georg
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden Jan Kornblum
man muss halt noch auf groß/klein prüfen und sonderzeichen usw aber sonst ist 
das so ca das was du suchst denk ich


Aber so fehlen im Result die Buchstaben für die es keinen Datensatz in 
news gibt ;) Er will ja das komplette Alphabet haben...



___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


Re: [TYPO3-german] Alphabetische Filterung von News, DB-Query

2013-04-09 Diskussionsfäden Georg Ringer

Hi,

Am 09.04.2013 16:13, schrieb Jan Kornblum:

Aber so fehlen im Result die Buchstaben für die es keinen Datensatz in
news gibt ;) Er will ja das komplette Alphabet haben...


naja ist mir schon klar, da brauchts einfach vorher ein array mit allen 
buchstaben, dann über das durchlaufen, vergleichen, done.


georg
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german