我试图使用以下代码从我的订阅表中使用testId列检索整个订阅对象。 testId列delclared为“JSON”类型,但在现实中,这个专栏的内容是一个字符串如下数组:Laravel Eloquent:使用JSON列键从数据库获取对象
["51602a95-73d1-4c24-b3b3-eee288b427e4"]
我试图让这个代码,但加时赛没有按”认购对象工作。我怎么能通过搜索testId的值到数组中来获得订阅对象的这段代码?
function getSubscriptionByTestId($testId) {
$subscription = Subscription::where('testId', $testId)->first();
return $subscription;
}
它看起来像Laravel 5.3做出尝试在允许JSON列使用'的查询 - >在哪里( “{column} - > {value_or_index}”,“{operator}”,“{comparison}};',见https://mattstauffer.co/blog/new-json-column-where-and-update-syntax- in-laravel-5-3以获得更多细节。注意,如果你不在Laravel 5.3中,'DB :: raw()'查询很可能是你最好的选择。 –