How to fetch all meta_key and meta_value using post_id wihout duplication of post meta using sql query

You don’t need to write a custom SQL for this. You can always leverage WP’s get_post_custom() that returns array of all custom fields for a particular page or post.

https://codex.wordpress.org/Function_Reference/get_post_custom