MySQL Örneklerle SELECT İfadesi

SELECT sorgusu nedir? MySQL?

SELECT QUERY, verileri almak için kullanılır. MySQL veritabanı. Veritabanları daha sonra geri almak için verileri depolar. Amacı MySQL Veritabanı tablolarından belirli bir kriterle eşleşen bir veya daha fazla satırın döndürülmesini seçin. Sorgu seçme PHP, Ruby gibi betik dillerinde kullanılabilir veya komut istemi aracılığıyla çalıştırabilirsiniz.

SELECT sorgusu MySQL

SQL SELECT ifadesi sözdizimi

En sık kullanılan SQL komutudur ve aşağıdaki genel söz dizimine sahiptir

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

İŞTE

  • SEÇİN veritabanının veri almak istediğinizi bilmesini sağlayan SQL anahtar sözcüğüdür.
  • [FARKLI | TÜM] SQL SELECT deyiminden döndürülen sonuçlara ince ayar yapmak için kullanılabilecek isteğe bağlı anahtar sözcüklerdir. Hiçbir şey belirtilmezse ALL varsayılan olarak kabul edilir.
  • {*| [fieldExpression [AS newName]} en az bir kısmı belirtilmeli, “*” belirtilen tablo adından tüm alanları seçmiş, fieldExpression belirtilen alanlar üzerinde sayı ekleme veya iki dize alanını bir araya getirme gibi bazı hesaplamalar yapıyor.
  • DAN tableName zorunludur ve en az bir tablo içermelidir; birden çok tablo virgül kullanılarak ayrılmalı veya JOIN anahtar sözcüğü kullanılarak birleştirilmelidir.
  • NEREDE koşulu isteğe bağlıdır, sorgudan döndürülen sonuç kümesindeki kriterleri belirtmek için kullanılabilir.
  • GROUP BY Aynı alan değerlerine sahip kayıtları bir araya getirmek için kullanılır.
  • HAVING GROUP BY anahtar sözcüğünü kullanarak çalışırken kriterleri belirtmek için koşul kullanılır.
  • TARAFINDAN SİPARİŞ Sonuç kümesinin sıralama düzenini belirtmek için kullanılır.

*

Yıldız sembolü tablodaki tüm sütunları seçmek için kullanılır. Basit bir SELECT ifadesinin örneği aşağıda gösterilene benzer.

SELECT * FROM `members`;

Yukarıdaki ifade, üyeler tablosundaki tüm alanları seçer. Noktalı virgül bir sonlandırma ifadesidir. Zorunlu değildir ancak ifadelerinizi bu şekilde sonlandırmak iyi bir uygulama olarak kabul edilir.

Pratik örnekler

İndirmek için tıklayınız Pratik örnekler için kullanılan myflix DB.

.sql dosyasını içe aktarmayı öğrenebilirsiniz. MySQL çalışma tezgahı

Örnekler aşağıdaki iki tabloda gerçekleştirilir

Tablo 1: üyeler tablo

Üye numarası tam_adlar cinsiyet doğum tarihi fiziksel adres posta adresi iletişim_ numarası E-posta
1 Janet Jones Kadın 21-07-1980 4. Sokak Parsel No:XNUMX Özel Çanta +0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Kadın 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Erkek 12-07-1989 3. Sokak 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Kadın 14-02-1984 2. Sokak 23 NULL NULL NULL

Tablo 2: filmler tablo

film_id başlık yönetmen yıl_released kimlik kategorisi
1 Karayip Korsanları 4 Rob Marshall 2011 1
2 Sarah Marshal'ı unutmak nicholas stoller 2008 2
3 X-Men NULL 2008 NULL
4 Kod Adı Siyah Edgar Jimz 2010 NULL
5 Babamın Küçük Kızları NULL 2007 8
6 melekler ve seytanlar NULL 2007 6
7 Da Vinci Şifresi NULL 2007 6
9 Honey Ay'a çıkanlar John Schultz 2005 8
16 %67 Suçlu NULL 2012 NULL

Üye listesi alınıyor

Veritabanımızdan kayıtlı tüm kütüphane üyelerinin bir listesini almak istediğimizi varsayalım, bunu yapmak için aşağıda gösterilen komut dosyasını kullanacağız.

SELECT * FROM `members`;

Yukarıdaki betiğin çalıştırılması MySQL workbench aşağıdaki sonuçları üretiyor.

Üye numarası tam_adlar cinsiyet doğum tarihi fiziksel adres posta adresi iletişim_ numarası E-posta
1 Janet Jones Kadın 21-07-1980 4. Sokak Parsel No:XNUMX Özel Çanta +0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Kadın 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Erkek 12-07-1989 3. Sokak 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Kadın 14-02-1984 2. Sokak 23 NULL NULL NULL

Yukarıdaki sorgumuz üyeler tablosundaki tüm satır ve sütunları döndürdü.

Diyelim ki yalnızca full_names, gender, physical_address ve email alanlarını almak istiyoruz. Aşağıdaki betik bunu başarmamıza yardımcı olacaktır.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

Yukarıdaki betiğin çalıştırılması MySQL workbench aşağıdaki sonuçları üretiyor.

tam_adlar cinsiyet fiziksel adres E-posta
Janet Jones Kadın 4. Sokak Parsel No:XNUMX janetjones@yagoo.cm
Janet Smith Jones Kadın Melrose 123 jj@fstreet.com
Robert Phil Erkek 3. Sokak 34 rm@tstreet.com
Gloria Williams Kadın 2. Sokak 23 NULL

Film listesi alınıyor

Yukarıdaki tartışmamızda SELECT ifadelerinde kullanılan ifadelerden bahsettiğimizi hatırlayın. Diyelim ki veritabanımızdan bir film listesi almak istiyoruz. Film başlığını ve film yönetmeninin adını tek bir alanda istiyoruz. Film yönetmeninin adı parantez içinde olmalıdır. Ayrıca filmin yayınlandığı yılı da almak istiyoruz. Aşağıdaki betik bunu yapmamıza yardımcı olur.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

İŞTE

  • Concat () MySQL işlevi sütun değerlerini bir araya getirmek için kullanılır.
  • “Concat (`title`, ' (', `yönetmen`, ')') satırı başlığı alır, bir açılış parantezi ve ardından yönetmenin adını ekler ve ardından kapanış parantezini ekler.

Concat () işlevinde dize bölümleri virgül kullanılarak ayrılır.

Yukarıdaki betiğin çalıştırılması MySQL workbench aşağıdaki sonuç kümesini üretir.

Concat(`başlık`, ' (', `yönetmen`, ')') yıl_released
Karayip Korsanları 4 (Rob Marshall) 2011
Sarah Marshal'ı Unutmak (Nicholas Stoller) 2008
NULL 2008
Kod Adı Siyah (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey ay meraklıları (John Schultz) 2005
NULL 2012

Takma ad alan adları

Yukarıdaki örnek, sonuçlarımız için alan adı olarak Concatenation kodunu döndürdü. Sonuç kümemizde daha açıklayıcı bir alan adı kullanmak istediğimizi varsayalım. Bunu başarmak için sütun takma adını kullanırdık. Aşağıda sütun takma adı için temel sözdizimi verilmiştir

SELECT `column_name|value|expression` [AS] `alias_name`;

İŞTE

  • “SEÇ ` sütun_adı|değer|ifade `” bir sütun adı, değeri veya ifadesi olabilen normal SELECT ifadesidir.
  • "[GİBİ]" olarak döndürülecek ifadeyi belirten takma adın önündeki isteğe bağlı anahtar kelimedir.
  • “`takma ad_adı`” sonuç kümemizde alan adı olarak döndürmek istediğimiz takma addır.

Daha anlamlı bir sütun adına sahip yukarıdaki sorgu

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

Aşağıdaki sonucu elde ederiz

concat yıl_released
Karayip Korsanları 4 (Rob Marshall) 2011
Sarah Marshal'ı Unutmak (Nicholas Stoller) 2008
NULL 2008
Kod Adı Siyah (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey ay meraklıları (John Schultz) 2005
NULL 2012

Üyelerin doğum yılını gösteren listelemeyi alma

Üyelik numarası, tam adlar ve doğum yılını gösteren tüm üyelerin bir listesini almak istediğimizi varsayalım, doğum yılını doğum tarihi alanından çıkarmak için LEFT dize işlevini kullanabiliriz. Aşağıda gösterilen betik bunu yapmamıza yardımcı olur.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

İŞTE

  • “SOL(`doğum_tarihi`,4)” the SOL dize işlevi parametre olarak doğum tarihini kabul eder ve soldan yalnızca 4 karakter döndürür.
  • “`doğum_yılı` OLARAK” olduğunu sütun takma adı bu, sonuçlarımızda döndürülecektir. not edin AS anahtar sözcüğü isteğe bağlıdır, bunu dışarıda bırakabilirsiniz; sorgu yine de çalışmaya devam eder.

Yukarıdaki sorgunun çalıştırılması MySQL myflixdb'ye karşı çalışma tezgahı bize aşağıda gösterilen sonuçları verir.

Üye numarası tam_adlar Doğum yılı
1 Janet Jones 1980
2 Janet Smith Jones 1980
3 Robert Phil 1989
4 Gloria Williams 1984

SQL kullanarak MySQL Tezgâh

Şimdi kullanacağız MySQL Kategoriler tablomuzdaki tüm alan adlarını görüntüleyecek komut dosyasını oluşturmak için Workbench'i kullanın.

1. Kategoriler Tablosuna sağ tıklayın. “Satır Seç – 1000 ile Sınırla” seçeneğine tıklayın

2. MySQL Workbench otomatik olarak bir SQL sorgusu oluşturacak ve düzenleyiciye yapıştıracaktır.

3. Sorgu Sonuçları gösterilecek

SQL kullanarak MySQL Tezgâh

SELECT ifadesini kendimiz yazmadığımıza dikkat edin. MySQL Workbench bunu bizim için yarattı.

Elimizde varken neden SELECT SQL komutunu kullanalım? MySQL Tezgah mı?

Şimdi, aşağıdaki gibi bir aracı kullanmak varken neden veritabanından veri sorgulamak için SQL SELECT komutunu öğrenmeyi düşünebilirsiniz? MySQL SQL dili bilgisi olmadan aynı sonuçları elde etmek için tezgahları kullanın. Elbette bu mümkün ama SELECT komutunun nasıl kullanılacağını öğrenme sana daha fazlasını verir esneklik ve kontrol senin yüzünden SQL SELECT ifadeleri.

MySQL çalışma tezgahı “ kategorisine giriyorÖrneğe Göre Sorgulama”QBE araçları. Kullanıcı verimliliğini artırmak için SQL ifadelerinin daha hızlı oluşturulmasına yardımcı olmak için tasarlanmıştır.

SQL SELECT komutunu öğrenmek, oluşturmanıza olanak sağlayabilir karmaşık sorgular gibi Örnekle Sorgulama yardımcı programları kullanılarak kolayca oluşturulamayan MySQL tezgah.

Üretkenliği artırmak için şunları yapabilirsiniz kullanarak kodu oluşturun MySQL tezgâh sonra özelleştirmek buna gereksinimlerinizi karşılayın. Bu ancak SQL ifadelerinin nasıl çalıştığını anlarsanız gerçekleşebilir!

MySQL Örneklerle SELECT İfadesi

ÖZET

  • SQL SELECT anahtar sözcüğü veritabanından veri sorgulamak için kullanılır ve en sık kullanılan komuttur.
  • En basit biçim, “SELECT * FROM tableName;” sözdizimine sahiptir.
  • İfadeler select deyiminde de kullanılabilir. Örnek "Satışlardan miktar + fiyatı SEÇİN"
  • SQL SELECT komutu ayrıca WHERE, GROUP BY, HAVING, ORDER BY gibi diğer isteğe bağlı parametrelere de sahip olabilir. Bunlar daha sonra tartışılacaktır.
  • MySQL Workbench, SQL ifadelerinin geliştirilmesine, bunların yürütülmesine ve aynı pencerede çıktı sonucunun üretilmesine yardımcı olabilir.