Wiedergabe von Lokaler Musiksammlung

Hier wird über Skills, welche es bereits gibt, diskutiert.
Benutzeravatar

Themenstarter
waringer
Beiträge: 46
Registriert: Sa 3. Feb 2018, 08:20
Vorhandene Echos: 2
Vorhandene Echo Dots: 4
Vorhandene Echo Shows: 1

Mo 3. Apr 2023, 04:08

Hallo Benedikt,

der neue Intent schaut sehr gut aus, ich werde ihn mir im laufe der Woche mal genau anschauen! Du darfst übrigens gerne, wenn du möchtest, einen Pull Request machen um deine Änderungen in mein Repo zu übernehmen. Wenn du nicht möchtest das dein Name in der History steht kann ich die Änderungen aber auch so übernehmen.

Viele Grüße
Waringer
0 x
Benutzeravatar

schirminger
Beiträge: 5
Registriert: Sa 25. Mär 2023, 14:48

Sa 8. Apr 2023, 12:48

Hallo Waringer,

ich versuche gerade das mit dem SOUNDEX bzw SOUNDS LIKE einzubauen und scheitere ein wenig an der Umsetzung.

In der Trockenübung klappt folgender Code ganz gut, aber in der Funktion kann er "absolut nix finden".

SET @search = "pornofonic";

ODER

SET @search = "red hot chilli peppers";


SET @mysearch = CONCAT('%', @search, '%');

DROP TABLE IF EXISTS tmppl;
CREATE TEMPORARY TABLE tmppl ( `tmp_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`tmp_TKid` INT(10) UNSIGNED NOT NULL,
`tmp_ATid` INT(10) UNSIGNED NOT NULL,
`tmp_AMin` INT(10) UNSIGNED NOT NULL,
`tmp_AMid` INT(10) UNSIGNED NOT NULL,
`tmp_TKin` INT(10) UNSIGNED NOT NULL,
PRIMARY KEY (`tmp_id`));

INSERT INTO tmppl
WITH r AS (
SELECT null, TracK.TK_id, AT_id, AM_Index, AM_id, TK_Index
FROM TracK
LEFT JOIN ArtisT ON TK_AT_id = AT_id
LEFT JOIN AlbuM ON TK_AM_id = AM_id
WHERE ArtisT.AT_Name LIKE @mysearch OR TK_Comment LIKE @mysearch OR AT_Name LIKE @mysearch OR AM_Name LIKE @mysearch
)
SELECT *
FROM r
UNION ALL
SELECT null, TracK.TK_id, AT_id, AM_Index, AM_id, TK_Index
FROM TracK
LEFT JOIN ArtisT ON TK_AT_id = AT_id
LEFT JOIN AlbuM ON TK_AM_id = AM_id
WHERE ArtisT.AT_Name SOUNDS LIKE @search OR TK_Comment SOUNDS LIKE @search OR AT_Name SOUNDS LIKE @search OR AM_Name SOUNDS LIKE @search
AND NOT EXISTS (
SELECT * FROM r
)
ORDER BY AT_id, AM_Index, AM_id, TK_Index, TK_id;


select * from tmppl;
select tmppl.tmp_TKid, tmppl.tmp_id, 0 FROM tmppl;



Evtl. hast Du, oder Jemand eine Idee.
Falls ich doch noch über eine brauchbare Lösung stolpern sollte, sag ich Bescheid.

Gruß
Benedikt
0 x
Benutzeravatar

Themenstarter
waringer
Beiträge: 46
Registriert: Sa 3. Feb 2018, 08:20
Vorhandene Echos: 2
Vorhandene Echo Dots: 4
Vorhandene Echo Shows: 1

Sa 8. Apr 2023, 15:05

Moin Moin Benedikt,

ich würde an "spUpdateActualPlaying" 2 änderugnen machen:

a)

Code: Alles auswählen

SET search = CONCAT('%', search, '%');
durch

Code: Alles auswählen

SET @LikeSearch = CONCAT('%', search, '%');

ersetzen und
b)

Code: Alles auswählen

WHERE TK_Name LIKE search  OR TK_Comment LIKE search  OR AT_Name LIKE search  OR AM_Name LIKE search 		
durch

Code: Alles auswählen

WHERE (TK_Name LIKE @LikeSearch OR TK_Comment LIKE @LikeSearch OR AT_Name LIKE @LikeSearch OR AM_Name LIKE @LikeSearch)
		OR (TK_Name SOUNDS LIKE search OR TK_Comment SOUNDS LIKE search OR AT_Name SOUNDS LIKE search OR AM_Name SOUNDS LIKE search)
damit sollte das gewünschte Ergebnis erzielt werden :)
0 x
Benutzeravatar

schirminger
Beiträge: 5
Registriert: Sa 25. Mär 2023, 14:48

So 9. Apr 2023, 09:14

einen wunderschönen guten morgen!

das hat ja wunderbar geklappt :)

Da habe ich mal wieder zu kompliziert gedacht, Danke schön.

Gruß
Benedikt
0 x
Antworten

Zurück zu „Fähigkeiten (Skills) zum downloaden“

  • Information