Konuşan Sorgular


    × Bunları biliyor muydunuz?
"(ZN >= 5.6) Sürümü itibari ile View:: kütüphanesi parametresiz kullanımda tuttuğu değeri döndürmektedir."


(ZN >= 5.2.0

Bu kullanımlar, sorgu kullanımlarını daha anlamlı ve kısa hale getirmeyi amaçlamaktadır. Özellikle CRUD işlemleri için daha kolay ve anlamlı sorgular yazabilirsiniz. Yöntem yazımlarında parametreler büyük harf ile başlar bu nedenle SQL harf duyarlılığının kapalı olduğundan emin olunuz. Aşağıda bu sorguların kullanımları ile ilgili detaylı örnekler verilecektir.

 

 

# Gereksinimler


SQL harf duyarlılığının kapalı olması gerekmektedir.

 

 

# Result İşlemleri


DB::result() yönteminin bir tür kullanımıdır.

Kural
Object tablenameResult(String $output = 'object')
Kullanımlar

Blog tablosuna ait tüm sonuçları almak için;

$result = DB::blogResult();

Bir koşula göre sonuçları almak için;

$result = DB::whereSlug('example-data')->blogResult();

Birden fazla koşula göre sonuçları almak için;

$result = DB::whereSlugAnd('example-data')->whereId(10)->blogResult();

 

 

# Row İşlemleri


DB::row() yönteminin bir tür kullanımıdır.

Kural
Object tablenameRow(Mixed $output = 0)
Kullanımlar

Blog tablosuna ait tek bir satır sonuç almak için;

$row = DB::blogRow();

Blog tablosuna ait 5. kayıta ait sonucu almak için;

$row = DB::blogRow(4);

Belli bir koşula göre tek satır sonuç almak için;

$row = DB::whereId(5)->blogRow();
5.7.0 Güncellemesi

Bu güncelleme ile kısa koşul oluşturma işlemi gerçekleştirilebilir.

Kural
Object tablenameRowColumnname(Scalar $value)
Kullanımlar
$row = DB::blogRowId(5); # DB::where('id', 5)->blog()->row() kullanımı gibidir.

Eğer parametre belirtilmez ise DB::value() yöntemi gibi çalışır.

 

 

# Value İşlemleri


DB::value() yönteminin bir tür kullanımıdır.

Kural
Scalar tablenameRowColumnname(Void)
Kullanımlar

Blog tablosuna ait tek bir kolon değerini almak için;

$value = DB::blogRowSlug();

Blog tablosuna ait tek bir kolon değerini belli bir koşula göre almak için;

$value = DB::whereIdOr(1)->whereIdOr(10)->whereId(20, '<')->blogRowName();

Eğer koşul eşittik dışında bir karşılaştırma olacaksa 2. parametreye karşılaştırma operatörü belirtilir.

$value = DB::whereCreate_date('2017', '<')->blogRowContent();

 

 

# Join İşlemleri


DB::typeJoin() yöntemlerinin bir tür kullanımıdır. Bu yöntemdeki type: left, right gibi kullanımları ifade etmektedir.

Kural
This leftJoinTablenameColumnnameTablename2Columnname2(String $operator = '=')
Kullanımlar
$result = DB::leftJoinAccoutsIdCommentsUser_id()
            ->rightJoinCommentsUser_idTopicUser_id('!=')
            ->commentsResult();
SELECT * FROM comments
LEFT JOIN accouts ON accouts.id = comments.user_id
RIGHT JOIN comments ON comments.user_id != topic.user_id 

 

 

# Group By ve Order By İşlemleri


DB::groupBy() ve DB::orderBy() yöntemlerinin bir tür kullanımıdır.

Kural
This groupByColumnname(Void)
This orderByColumnnameOrdertype(Void)
Kullanımlar
DB::orderByCreate_dateAsc()->groupByCreate_date()->productsResult();
SELECT * FROM products GROUP BY create_date ORDER BY create_date Asc

 

 

# Insert İşlemi


DB::insert() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameInsert(Array $columnAndValues)
Kullanımlar

Blog tablosuna yeni bir kayıt eklemek için;

DB::blogInsert(['name' => 'New Blog', 'content' => 'New Blog Content']);

 

 

# Update İşlemi


DB::update() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameUpdate(Array $columnAndNewValues)
Kullanımlar

Blog tablosuna ait bir kayıtı güncellemek için;

DB::blogUpdate(['name' => 'New Blog 2']);
5.7.0 Güncellemesi

Bu güncelleme ile where yapısını da kısa bir şekilde kullanabilirsiniz.

Kural
Bool tablenameUpdateColumnname(Array $columnAndNewValues, Scalar $columnValue)
Kullanımlar

Blog tablosuna ait bir kayıtı güncellemek için;

DB::blogUpdateId(['name' => 'New Blog 2'], 1);

Yukarıdaki kullanım id kolonu 1 olanın verilerinin güncelleneceğini belirtir.

 

 

# Delete İşlemi


DB::delete() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameDelete(Void)
Kullanımlar

Blog tablosuna ait bir kayıtı silmek için;

DB::whereName('New Blog 2')->blogDelete();
5.7.0 Güncellemesi

Bu güncelleme ile where yapısını da kısa bir şekilde kullanabilirsiniz.

Kural
Bool tablenameDeleteColumnname(Scalar $columnValue)
Kullanımlar

Blog tablosuna ait bir kayıtı silmek için;

DB::blogDeleteName('New Blog 2');

Yukarıdaki kullanım name kolonu 'New Blog 2' olanın verilerinin silineceğini belirtir.

 

 

# Create Table İşlemi


DBForge::createTable() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameCreate(Array $columnsAndProperties)
Kullanımlar

Accounts tablosu oluşturmak için;

DBForge::accountsCreate(['id' => [DB::int(11), DB::autoIncrement(), DB::primaryKey()]]);

 

 

# Drop Table İşlemi


DBForge::dropTable() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameDrop(Void)
Kullanımlar

Accounts tablosunu silmek için;

DBForge::accountsDrop();

 

 

# Truncate İşlemi


DBForge::truncate() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameTruncate(Void)
Kullanımlar

Accounts tablosunun içeriğini boşaltmak için;

DBForge::accountsTruncate();

 

 

# Rename İşlemi


DBForge::renameTable() yönteminin bir tür kullanımıdır.

Kural
Bool tablenameRename(String $newTableName)
Kullanımlar

Accounts tablosunun adını değiştirmek için;

DBForge::accountsRename('new_accounts');