public LinkedList<Video> searchVideos(LinkedList<Pair<String, String>> whereClauses,
                                           LinkedList<String> whereConjunctions, char order) throws SQLException {
        LinkedList<String> select = new LinkedList<String>();
        select.add("*");
        LinkedList<String> from = new LinkedList<String>();
        from.add("Videos");
        Pair<String, LinkedList<String>> orderBy;
        if (order == 'a') {
            orderBy = new Pair<String, LinkedList<String>>("Year", new LinkedList<String>());
        } else if (order == 'b') {
            orderBy = new Pair<String, LinkedList<String>>(
                    "(SELECT AVG(Score) FROM Reviews WHERE Reviews.ISBN = Videos.ISBN)", new LinkedList<String>());
        } else {
            orderBy = new Pair<String, LinkedList<String>>(
                    "(SELECT AVG(Score) FROM Reviews, Trusts WHERE IsTrusted = 1 AND Trustee = Reviewer AND " +
                            "Reviews.ISBN = Videos.ISBN AND Truster = ?)", new LinkedList<String>());
            orderBy.getValue().add(username);
        }
        String orderDirection = "DESC";
        int limit = 0;
        ResultSet resultSet = executeDynamicQuery(select, from, whereClauses, whereConjunctions, orderBy,
                orderDirection, limit);

        return videoListFromResultSet(resultSet);
    }