簡體   English   中英

錯誤:運算符不存在:沒有時區的時間戳 > 整數)

[英]ERROR: operator does not exist: timestamp without time zone > integer)

我正在使用 Rails 5.2 並傳遞一個日期參數。 為了簡化我的例子,請看下面的 sql 查詢,它很相似但被簡化,因為它太復雜而無法與活動記錄方法一起使用,所以我需要運行原始 sql..

sql = 'Select * FROM mytable WHERE created_at > #{@start_date_time}'

1) 如何在將參數傳遞到字符串或執行命令時對其進行清理。

2)我的日期應該是什么格式? 我試過 '2018-01-01 00:00:00.000' 和 '2018-01-01' 都出錯了。

代碼:

sql =count_query(@start_date_time, sender_type, sender_id)
records_array = ActiveRecord::Base.connection.execute(sql)

錯誤

ActiveRecord::StatementInvalid (PG::UndefinedFunction: 
ERROR:  operator does not exist: timestamp without time zone > integer)

LINE 11: WHERE created_at > 2018-01-01

WHERE created_at > '2018-01-01' 應該可以工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM