Выключение косой черты в PostgreSQL JSON

это использование для Scope так же, как это

  <script type="text/javascript" language="javascript">
$('#tbleName tbody tr').each(function{
var txt='';
txt += $(this).find("td").eq(0).text();
\\same as above but synatx different
var txt1='';
 txt1+=$('#tbleName tbody tr').eq(0).text();
alert(txt1)
});
</script>

значение txt1 и txt одинаково в вышеприведенном примере $ (this) = $ ('# tbleName tbody tr') - Same

0
задан itsmewiththeface 13 July 2018 в 16:57
поделиться

1 ответ

Я предполагаю, что "YYYY-MM-DD HH:MM:SS" в вашем вопросе на самом деле является реальным значением временной метки, например 2018-07-13 18:55:42, а не символами, которые вы указали.


to_char() ожидает значение date или timestamp и преобразует его в строку. Вы хотите по-другому: преобразовать строку в метку времени. Для этого вам нужно использовать to_timestamp()

to_timestamp('{"Date/Time": "2018-07-13 18:55:42"}'::json ->> 'Date/Time', 'YYYY-MM-DD HH24:MI:SS')

возвращает значение как фактическое значение timestamp. Если вы хотите DATE, а не timestamp, вы можете использовать to_date() вместо to_timestamp()

. Если вы хотите отформатировать это так, чтобы отображались только год и месяц, вы можете отформатировать этот timestamp с использованием to_char()

to_char(to_timestamp('{"Date/Time": "2018-07-13 18:55:42"}'::json ->> 'Date/Time', 'YYYY-MM-DD HH24:MI:SS'), 
       'yyyy-mm') as datetime
1
ответ дан a_horse_with_no_name 17 August 2018 в 12:22
поделиться
  • 1
    Выглядит неплохо. Просто интересно, если бы у меня были записи, в которых дата / время не сопоставляется ни с чем (т. Е. «& Quot;»), тогда это произойдет? – itsmewiththeface 13 July 2018 в 17:38
  • 2
    @itsmewiththeface: вы можете обернуть data->>'Date/Time' в isnull(data->>'Date/Time', '') – a_horse_with_no_name 13 July 2018 в 18:32
Другие вопросы по тегам:

Похожие вопросы: