如何在postgres中分离json字段并获得该字段

时间:2017-02-14 10:39:34

标签: json postgresql

我正在使用mongoDB,我使用了包装器mongo / Postegres。 现在,我可以找到我的表格和数据。

我想做一些统计数据,但我无法到达Postgres中有json类型的对象。

我的问题是我在json中获得了所有对象,但我需要将字段分开。

我用过这个:

        <script src="editor/ckeditor/ckeditor.js"></script>
        <script type="text/javascript" src="editor/ckfinder/ckfinder.js"></script>

<form action="" method="get">

		<input id="ckfinder-input-1" name="resimyolu" type="text" style="width:60%">
		<button id="ckfinder-popup-1" class="button-a button-a-background">Browse Server</button>

</form>
<script>
	var button1 = document.getElementById( 'ckfinder-popup-1' );
	var button2 = document.getElementById( 'ckfinder-popup-2' );

	button1.onclick = function() {
		selectFileWithCKFinder( 'ckfinder-input-1' );
	};
	button2.onclick = function() {
		selectFileWithCKFinder( 'ckfinder-input-2' );
	};

	function selectFileWithCKFinder( elementId ) {
		CKFinder.popup( {
			chooseFiles: true,
			width: 800,
			height: 600,
			onInit: function( finder ) {
				finder.on( 'files:choose', function( evt ) {
					var file = evt.data.files.first();
					var output = document.getElementById( elementId );
					output.value = file.getUrl();
				} );

				finder.on( 'file:choose:resizedImage', function( evt ) {
					var output = document.getElementById( elementId );
					output.value = evt.data.resizedUrl;
				} );
			}
		} );
	}
</script>

&#34;来自&#34;是一个对象。

我发现了这样的事情:

CREATE FOREIGN TABLE rents( _id NAME, status text, "from" json )
SERVER mongo_server
OPTIONS (database 'tr', collection 'rents');

但没有发生

and this is the error

1 个答案:

答案 0 :(得分:0)

错误(屏幕截图的原因??)表示数据不是有效的json格式。

作为第一步,您可以将列定义为text而不是json。然后查询外表可能会有效,你可以看到实际返回的内容以及为什么PostgreSQL认为这不是有效的JSON。

也许你可以在外表上创建一个视图,将视图转换为有效的JSON以便进一步处理。