Hai ragione. Il primo non ha senso: infatti non puo` esistere un <body> all'interno di un <div>.

In teoria potrebbe esserci
codice:
div #body{ background-image: url(sfondo.gif); }
dove si intende un blocco con id="body" all'interno di un <div>.
Nota pero` che non e` buona pratica usare nomi uguali per oggetti diversi (il tag <body> e il blocco con id="body" ).