select concat() und where-Klausel

newbe

Grünschnabel
Hallo, ich habe folgendes Problem in MySQL:

Ich habe einmal folgenden sql befehl

SQL:
select CONCAT(PS_Daten_Mieterdaten.Name, ', ', PS_Daten_Mieterdaten.Vorname) as Mietername
from user.PS_Daten
left join user.PS_Daten_Mieterdaten on (PS_Daten_Mieterdaten.id = PS_Daten.id)
where 'Mietername' like '%j%'

In der PS_Daten steht nur die 2, was in PS_Daten_Mieterdaten eigentlich Jahn etc heißt

Aber er findet es nicht.

Kann es sein, dass man nach Concats nicht filtern kann?
Und wenn ja, wie kann ich das dann anders löschen

Wenn ich die where-Klausel weglasse, dann zeigt er mir alles an...

Weiß da jemand Abhilfe?
 
Zuletzt bearbeitet von einem Moderator:
Entweder du nimmst den CONCAT auch in das WHERE oder du machst ein Query über dieses.
Ev geht es auch wenn du beim Mietername die '' weglässt, denn der String 'Mietername' enthält definitif kein j

Und bitte Sqls in Tags schreiben, dann kann man sie auch lesen.
[code=sql]SELECT...[/code]

Also, ev. geht es so (hab grad keine Testdb zur Hand)
SQL:
SELECT CONCAT(PS_Daten_Mieterdaten.Name, ', ', PS_Daten_Mieterdaten.Vorname) as Mietername
FROM 
	user.PS_Daten
	LEFT JOIN user.PS_Daten_Mieterdaten 
		ON (PS_Daten_Mieterdaten.id = PS_Daten.id)
AS mieter
WHERE Mietername LIKE '%j%';


Oder eine der beide Varienten. es müsten eigentlich beide gehen, wobei die erste die bessere isr.
SQL:
SELECT Mietername
FROM
	(SELECT CONCAT(PS_Daten_Mieterdaten.Name, ', ', PS_Daten_Mieterdaten.Vorname) as Mietername
	FROM 
		user.PS_Daten
		LEFT JOIN user.PS_Daten_Mieterdaten 
			ON (PS_Daten_Mieterdaten.id = PS_Daten.id)
	) AS mieter
WHERE mieter.Mietername LIKE '%j%';



SELECT CONCAT(PS_Daten_Mieterdaten.Name, ', ', PS_Daten_Mieterdaten.Vorname) as Mietername
FROM 
	user.PS_Daten
	LEFT JOIN user.PS_Daten_Mieterdaten 
		ON (PS_Daten_Mieterdaten.id = PS_Daten.id)
WHERE CONCAT(PS_Daten_Mieterdaten.Name, ', ', PS_Daten_Mieterdaten.Vorname) LIKE '%j%';
 
Zuletzt bearbeitet von einem Moderator:
Zurück