The \'Embedded\' section of the Datomic Queries and Rules document says:
Query languages like SQL are oriented around a client-server model where, in a
There is a specific datomic.api/touch function to just "Touch" all the attributes of the entity. Entity returned by the entity function are lazy and the attribute value is returned only when accessed, the touch function eagerly retrieve all the entity attributes.
(let [entity (d/entity db-val (ffirst (d/q '[:find ?e :in $ ?email
:where [?e :user/email ?email]]
db-val email))]
;;then just d/touch the entity returned by the d/entity fn
(d/touch entity))
=> {:user/username "gretchen", :user/email "gretchen@user.com", :user/password "xxxxxx", :db/id 17592186046433}