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

テーブルの結合についてもう一度サポートが必要

    正確なユーザーIDでフィルタリングする代わりに、次のように、ユーザーが問題に関連しているかどうかを確認する必要があります。

    select
      t.title,
      group_concat(
        case when tu.type = 1 then 
          concat(u.firstname, ' ', u.lastname)
        end) as creator,
      t.priority,
      t.date,
      group_concat(
        case when tu.type = 2 then 
          concat(u.firstname, ' ', u.lastname)
        end SEPARATOR ' - ') as users
    from
      tickets t
      inner join tickets_users tu on tu.ticketid = t.id
      inner join users u on u.id = tu.userid
    where 
      exists (
        select 
          'x' 
        from 
          tickets_users tu2 
        where 
          tu2.ticketid = t.id and 
          tu2.userid = <youruserid> and 
          tu2.type = 1)
    group by
      t.id;
    

    <youruserid>の場合 必要なユーザーIDを入力できます。このクエリは、そのユーザー(type =1)によって報告されたすべての問題を返します。ただし、これらすべての問題については、関連するすべてのユーザーが返されるため、クエリ結果は引き続き完了します。




    1. パフォーマンス複数の挿入または複数の値の単一挿入

    2. OBJECTPROPERTY()関数を使用して、オブジェクトがSQL Serverのテーブル、ビュー、またはストアドプロシージャであるかどうかを確認します

    3. MySQLdb、mysqlclient、MySQLコネクタ/ Pythonの違いは何ですか?

    4. SQLServerのデータベースチェックポイント