Obtener URL de imágenes de productos (WooCommerce)
¿Qué sucede cuando una entrada (producto) no tiene un guid porque comparte la misma imagen con otro producto?
Por ejemplo:
Consulta 1:
select guid from wp_posts where post_type='attachment' and post_parent=num
No devuelve nada.
Consulta 2:
select guid from wp_posts where ID=num
Devuelve la URL del producto.
En este caso, ¿cómo debería encontrar la URL de la imagen de ese producto?

En primer lugar, el GUID no es la URL. Es un "identificador único global". WordPress utiliza la URL para este propósito, pero acceder a ella no es una forma confiable de obtener la URL de cualquier cosa (esto fue una mala idea, pero se mantiene así por compatibilidad con versiones anteriores).
No es posible consultar la URL de la imagen directamente desde la base de datos. La URL completa no se almacena allí. Pero si tienes el ID de un producto y deseas obtener la URL de su imagen, puedes hacer esto:
$product = wc_get_product( $product_id );
$image_id = $product->get_image_id();
$image_url = wp_get_attachment_image_url( $image_id, 'full' );

Gracias, pero si quiero encontrarlo desde la base de datos, ¿en qué tabla puedo encontrarlo?

Como dije, la URL completa no está almacenada en la base de datos. Se genera programáticamente en base a varios factores, como la URL del sitio, la estructura de enlaces permanentes, los argumentos de reescritura del tipo de publicación, la estructura del directorio de subidas y los ajustes de wp-config. Necesitas obtenerla usando una función como la de mi respuesta.

He visto en algún lugar una consulta para obtener las imágenes de productos desde la base de datos.
Quizás te pueda ayudar.
Solo configura los parámetros requeridos según tus necesidades.
SELECT p.ID,am.meta_value FROM wp_posts p LEFT JOIN wp_postmeta pm ON pm.post_id = p.ID AND pm.meta_key = '_thumbnail_id' LEFT JOIN wp_postmeta am ON am.post_id = pm.meta_value AND am.meta_key = '_wp_attached_file' WHERE p.post_type = 'product' AND p.post_status = 'publish';

Para tu referencia, solo ejecuta esta consulta en la base de datos:
SELECT * FROM `wp_postmeta` WHERE meta_key IN ('_wp_attached_file', '_wp_attachment_backup_sizes', '_wp_attachment_metadata', '_thumbnail_id')
Y si ejecutas la consulta anterior solo con "_wp_attached_file", obtendrás la ruta desde el directorio de subidas.
Espero que te ayude...
