How to grep multiple strings and (&) condition

How can I run grep with multiple AND patterns or conditions? I need something as follows on a Linux or Unix systems such as macOS:

grep word1 & word2 & word3 filename

But, the syntax didn’t worked out for me.

Linux sysadmin blog - Linux/Unix Howtos and Tutorials - Linux bash shell scripting wiki