SQL - Add column if match else, on aggregate data
You can add the number of gifts with either:

SELECT ..., 
    COUNT(CASE WHEN GiftOrder='gift' THEN 1 END) AS number_of_gifts


or the similar (works in MySQL only):

SELECT ..., 
    SUM(GiftOrder='gift') AS number_of_gifts


If you want a simple (yes/no) as in your question, if the customer has ever done one or more gifts vs. none at all, then:

SELECT ..., 
    CASE WHEN COUNT(CASE WHEN GiftOrder='gift' THEN 1 END) &gt; 0 
        THEN 'Gift'
        ELSE 'Not Gift' 
    END AS gifts