sql >> データベース >  >> RDS >> Mysql

個別の通知を選択し、より明確な通知メッセージを準備する

    データが同じ構造のままであると仮定して、最初と2番目の要件を解決するクエリ部分のみを共有しています。クエリに結合やその他の必要な詳細を追加できます。

    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;

    文字列関数は複雑に見えることは知っていますが、必要な出力に到達するには、生成された文字列を試してみる必要がありました。 SQL Fiddleのデータセットを少し変更して、出力を確認しました。次の場所でも同じことができます:

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

    満たすべき他の基準や、クエリで必要な拡張機能がある場合は、お知らせください。



    1. Oracleで大文字に変換する2つの方法

    2. 警告:mysql_query()は、パラメーター2がリソースであると想定しています。ブール値はC:\ wamp \ www \ pyrll\emlhome.phpの15行目にあります。

    3. 同じテーブルからのmysqlの結果を一覧表示します

    4. サーバーを起動できません:TCP / IPポートでバインド:要求されたアドレスを割り当てることができません