Q:

json data save into postgresql become different order

When I save data into table , then do select from table it become different order, I check in pgadmin it is too.
Why?? and how to solve it? 
CREATE TABLE IF NOT EXISTS "user_role_track"(
    "id" SERIAL NOT NULL,
    "create_date" timestamp without time zone,
    "create_by_user_id" integer,
    "action" integer,
    "old_data" jsonb,
    "new_data" jsonb
  );

data create in nodejs app
var newData = {
  "id": userRoleId,
  "create_date": timestamp,
  "user_id": userId,
  "role": role
};
... 

// save with promise sync function
var dbQueryR = yield Promise.resolve( queryPromise(dbClient, dbQuery, dbParams) );

select from table/ see through pgadmin 
"{"id": 2, "role": 1, "user_id": 17, "create_date": "2016-07-11 09:09:18"}"

A:

If I understand you rigtht, your json elements are mixed up after insert?..
then look at json specs

An object is an unordered set of name/value pairs

as stated in JSON order mixed up 

You cannot and should not rely on the ordering of elements within a
  JSON object.

