sql, sqlite SELECT with inner join

前端 未结 2 1323
逝去的感伤
逝去的感伤 2020-12-21 04:38

I\'m wondering how to select one column twice using an inner joinor some other way. my database is sqlite and i use PDO db driver.

My Example:

    SE         


        
相关标签:
2条回答
  • 2020-12-21 04:48

    Use aliases in your table names, so you can use multiple references to the same table. This also can help make large queries easier to read.

    SELECT
            orders.id,
            orders.order_number,
            clients.first_name,
            clients.last_name,
            createUsers.name AS creator_name,
            editUsers.name AS editor_name
    FROM orders
    
    INNER JOIN clients ON
            orders.client_id = clients.id
    
    INNER JOIN users As createUsers ON
            orders.created_by = users.id
    
    INNER JOIN users As editUsers ON
            orders.edited_by = users.id
    

    You can use as many "instances" of the same table as you wish.

    0 讨论(0)
  • 2020-12-21 04:50

    You'll need to use table aliases.

    SELECT
            orders.id,
            orders.order_number,
            clients.first_name,
            clients.last_name,
            creator.name AS creator_user_name
            editor.name AS editor_user_name
    FROM orders
    
    INNER JOIN clients ON
            orders.client_id = clients.id
    
    INNER JOIN users creator ON
            orders.created_by = creator.id
    
    INNER JOIN users editor ON
            orders.edited_by = editor.id
    
    0 讨论(0)
提交回复
热议问题