def get_column_name_case_insensitive(name, column_names):
    """
    Return the column name that matches name in a case-insensitive comparison.

    Parameters
    ----------

    name : str
        Name for which match is desired.

    column_names : list
        List of column names.

    Returns
    -------

    str or None
        name of first matching column or ``None``, if no match is found.
    """
    for cname in column_names:
        if name.lower() == cname.lower():
            return cname
    else:
        return ''
