sql >> Databáze >  >> RDS >> Mysql

Výběr odlišných oznámení a příprava jasnějšího oznámení

Sdílím pouze část dotazu, která řeší váš první a druhý požadavek za předpokladu, že vaše data zůstanou ve stejné struktuře. Do svého dotazu můžete přidat spojení a další potřebné podrobnosti.

SELECT myView.*, CONCAT(REPLACE(REPLACE(group_concat(SUBSTRING(notification_message,9)),'</strong>',''),SUBSTRING_INDEX(notification_message,'>',-1),''), SUBSTRING_INDEX(notification_message,'>',-1)) AS Message
FROM (SELECT DISTINCT receiver_id, notification_issuer, notification_message, notification_target, notification_type FROM imgzer_notifications
WHERE receiver_id = 9 and notification_seen = 1 ORDER BY notification_time DESC) myView GROUP BY myView.receiver_id, myView.notification_target, myView.notification_type;

Vím, že funkce String vypadají složitě, ale abyste dosáhli požadovaného výstupu, museli jste si pohrát s vygenerovanými řetězci. Trochu jsem upravil vaši datovou sadu v SQL Fiddle, abych zkontroloval svůj výstup. Totéž můžete udělat na adrese:

http://www.sqlfiddle.com/#!2/70a937/49

Dejte mi vědět v případě, že existují nějaká další kritéria, která je třeba splnit, nebo jakékoli vylepšení, které v dotazu požadujete.



  1. Zpracování velkých transakcí pomocí replikace streamování a MariaDB 10.4

  2. Jak mohu importovat geoDataFrame do MySQL?

  3. SQLAlchemy create_all() nevytváří tabulky

  4. Co tento dotaz dělá pro vytvoření seznamu SQL Server odděleného čárkami?