json数据保存到postgresql的顺序不同
当我将数据保存到表中时,请从表中进行选择,使其成为不同的顺序,我也会在pgadmin中进行检查。json数据保存到postgresql的顺序不同,json,node.js,postgresql,jsonb,Json,Node.js,Postgresql,Jsonb,当我将数据保存到表中时,请从表中进行选择,使其成为不同的顺序,我也会在pgadmin中进行检查。 为什么?如何解决呢 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" js
为什么?如何解决呢
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
);
在nodejs应用程序中创建数据
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) );
从表格中选择/查看pgadmin
"{"id": 2, "role": 1, "user_id": 17, "create_date": "2016-07-11 09:09:18"}"
如果我理解正确的话,您的json元素在insert?之后就混在一起了 然后看看 对象是一组无序的名称/值对 如中所述 您不能也不应该依赖 JSON对象
由于DBMS进行了优化,因此无法保证存储数据的顺序。如果您需要特定的顺序,您应该使用
orderby
来获取结果。如果您关心键的顺序,请使用json
而不是jsonb
类型。@Abelisto谢谢。但我认为jsonb非常适合我的需要