## Bug description

Sentry error: https://sentry.io/organizations/posthog/issues/2588698757/events/62db81be9cbe44638988eda3dc72ad8c/?project=1899813

## Expected behavior

Don't fail

## How to reproduce

1. Create an action with a person filter (e.g. `User Signed Up (self-hosted)` on cloud)
2. Try to graph that action
3. See no results, error in backend

## Environment

- [x] PostHog Cloud
- [ ] self-hosted PostHog (ClickHouse-based), version/commit: _please provide_
- [ ] self-hosted PostHog (Postgres-based, legacy), version/commit: _please provide_

## Additional context

`ClickhouseEventQuery._determine_should_join_persons` does not resolve action type entity properties. Rather than do it there we can likely piggy-back off of `ColumnOptimizer` here.

#### *Thank you* for your bug report – we love squashing them!

posthog/queries/test/test_trends.py
with freeze_time("2020-01-01 00:06:34"):
                for i in range(20):
                    person = person_factory(team_id=self.team.pk, distinct_ids=[f"person{i}"])
                    event_factory(
                        team=self.team,
                        event="sign up",
                        distinct_id=f"person{i}",
                        properties={"$some_property": f"value_{i}", "$math_prop": 1},
                    )
                    event_factory(
                        team=self.team,
                        event="sign up",
                        distinct_id=f"person{i}",
                        properties={"$some_property": f"value_{i}", "$math_prop": 1},
                    )
                person = person_factory(team_id=self.team.pk, distinct_ids=[f"person21"])
                event_factory(
                    team=self.team,
                    event="sign up",
                    distinct_id=f"person21",
                    properties={"$some_property": "value_21", "$math_prop": 25},
                )
            with freeze_time("2020-01-04T13:00:01Z"):
                daily_response = trends().run(
                    Filter(
                        data={
                            "display": TRENDS_TABLE,
                            "interval": "day",
                            "breakdown": "$some_property",
                            "events": [{"id": "sign up", "math": "p90", "math_property": "$math_prop"}],