Laravel, Eloquent ORM ile birlikte gelen güçlü bir ORM (Object-Relational Mapping) içerir. Ancak, bazen Eloquent kullanmak yerine doğrudan SQL sorguları kullanmak isteyebilirsiniz. Bu durumda, Laravel'in DB facade'i ve table yöntemi kullanarak veri çekebilirsiniz.
Öncelikle veritabanı bağlantınızın olması gerekmektedir. DB::table yöntemini kullanarak sorgularınızı oluşturabilirsiniz. Örneğin, bir kullanıcı tablosundan tüm kullanıcıları çekmek için aşağıdaki gibi bir örnek yapılabilir.
$users = DB::table('users')
->get();Bu sorgu, users tablosundaki tüm verileri getirecektir. get yöntemi, sorgudan dönen tüm kayıtları içeren bir koleksiyon döndürecektir.
Sorgularınızı filtrelemek veya sıralamak için çeşitli yöntemleri kullanabilirsiniz. Örneğin, where yöntemini kullanarak belirli bir koşula uyan kayıtları getirebilirsiniz:
$user = DB::table('users')
->where('name', 'John')
->first();Bu Sorgu users tablosunda name ‘i John ’a denk gelen ilk veriyi döndürecektir.
Gelen verilerinizin belirli bir sıralamaya göre gelmesini istiyor iseniz orderBy yöntemini kullanarak belirlenen sütunda normal veya tersten sıralanmasını sağlayabiliriz.
$users = DB::table('users')
->orderBy('name', 'desc')
->get();Yukarıdaki örnek de name sütununa göre göre kullanıcıların verilerini tersten bir sıralama ile döndürecektir.
Bazı durumlarda, sadece belirli alanları almak isteyebilirsiniz. Bu durumda, select yöntemini kullanabiliriz.
$users = DB::table('users')
->select('name', 'email')
->get();Yukarıdaki sorgu, "name" ve "email" alanlarını içeren tüm kullanıcıları getirecektir.
Yorum yapabilmek için giriş yapmanız gerekmektedir.