@AURAWINDSURFING - That is not going to help as I have to search for Customer and list them out based on the searched string. so it should be the mysql query only that will help. Thank you for suggestion.
Below query works at the moment as per my requirement. "attributes" is the name of the JSON field and I had numeric keys within it.
Customer::select(DB::raw('CONCAT(id,"_","Customer") AS iid'), DB::raw('attributes->>"$.\"1\".value" AS text'))->whereRaw('JSON_SEARCH(attributes, "all", "John") IS NOT NULL')->get();
Also, some of the query example that worked and might be helpful to someone