BilgisayarlarVeritabanları

MySQL sorguda bir sorundur. MySQL: Sorgu örnekleri. İç içe geçmiş MySQL sorguları

Şu anda, her kişi dijital bilgi hacminde hızlı bir büyüme gözlemliyor. Ve bu bilgilerin çoğu önemli olduğundan daha sonra kullanmak üzere dijital ortama kaydetme ihtiyacı vardır. Bu durumda veritabanları gibi modern teknolojiler kullanılabilir. Herhangi bir dijital bilginin güvenilir biçimde depolanmasını sağlarlar ve verilere erişim dünyanın herhangi bir yerinde yapılabilir. Düşünülen teknolojilerden biri MySQL veritabanı yönetim sistemidir.

DBMS MySQL - nedir?

İlişkisel veritabanı yönetim sistemi MySQL, bilgi depolama alanının en popüler ve sıklıkla kullanılan teknolojilerinden biridir. İşlevsellik, birçok bakımdan mevcut DBMS'den üstün. Özellikle, ana özelliklerden biri, iç içe geçmiş MySQL sorgularını kullanma becerisidir.

Bu nedenle, zamanın önemli olduğu ve karmaşık veri örneklerinin yürütülmesinin yanı sıra bilginin depolanmasını sağlamak için gerekli olan pek çok proje MySQL veritabanında temel alınarak geliştirilmiştir. Bu gelişmelerin çoğu İnternet siteleridir. Bu durumda, MySQL hem küçük (bloglar, site-iş kartları, vb.) Hem de oldukça büyük görevleri (çevrimiçi mağazalar, veri ambarı , vb.) Uygularken aktif bir şekilde tanıtıldı. Her iki durumda da, site sayfasındaki bilgileri görüntülemek için bir MySQL sorgusu kullanılır. İstekte geliştiriciler, veritabanı yönetim sistemi tarafından sağlanan mevcut fırsatlardan en iyi şekilde faydalanmaya çalışıyorlar.

Veri saklama alanı nasıl organize edilmelidir?

Uygun depolama ve daha sonraki işleme için, veri mutlaka düzenlenmiştir. Veri yapısı , bilgiyi depolamak için kullanılan tabloların nasıl görüneceğini belirlemenize izin verir. Veritabanı tabloları, veri nesnesinin her bir özel mülkinden sorumlu alanlardan biridir (sütunlar).

Örneğin, belirli bir şirketin çalışanlarının bir tablosu derleniyorsa, en basit yapısı aşağıdaki biçimde olacaktır. Her çalışana, kural olarak tabloya ait birincil anahtarı olarak kullanılan benzersiz bir numara atanır. Ardından çalışanın kişisel verileri tabloya girilir. Her şey olabilir: adı, sabit olduğu bölüm numarası, telefon, adres ve benzeri. Normalleştirme gereksinimlerine (6 normal veritabanı formlarına) ve ayrıca yapılandırılmış MySQL sorgularına göre, tablo alanları atomik olmalıdır, yani numaralandırma veya listeleri yoktur. Dolayısıyla, kural olarak, tabloda bir soyadı, adı vb. Için ayrı alanlar vardır.

employee_id

soyadı

isim

soyadı

Department_id

pozisyon

telefon

Employer_id

1

Ivanov

Ivan

Ivanovic

İdaresi.

yönetmen

495 ****

boş

2

Petrov

Peter

Petrovich

İdaresi.

Milletvekili. yönetmen

495 ***

1

3

Grishin

Gregory

G.

satış

kafa

1

...

...

...

...

...

...

...

...

59

Sergeev

Sergei

S.

satış

Satıcı danışmanı.

495 ***

32

Yukarıdaki tablo, veritabanı tablosunun önemsiz bir örneğidir. Bununla birlikte, hala normalleştirme temel gereksinimlerini tam olarak karşılamamaktadır. Gerçek sistemlerde ek bir departman tablosu oluşturulur. Bu nedenle, yukarıdaki tabloda "Bölüm" sütunundaki kelimeler yerine bölüm sayısını içermelidir.

Verilerin örneklenmesi nasıl yapılır?

DBMS'deki tablolardan veri almak için özel bir MySQL komutu kullanın - Seç sorgusu . Veritabanı sunucusunun talebe doğru yanıt vermesi için, talebin doğru bir şekilde oluşturulması gerekir. Sorgu yapısı aşağıdaki gibi oluşturulmuştur. Veritabanı sunucusuna herhangi bir erişim, anahtar kelime select ile başlar. Ondanmış Hepsi inşa edilmiştir MySQL sorgular. Örnekler farklı karmaşıklığa sahip olabilir, ancak inşaat ilkesi çok benzerdir.

Ardından hangi alanları istediğiniz gibi seçmek istediğinizi belirtmeniz gerekir. Alanlar, select cümlecikten sonra virgülden sonra numaralandırılır. Gerekli tüm alanlar listelendikten sonra, sorgu from maddesinin kullanılarak ve seçim yapılacağı tablonun nesnesini belirler, tablo adını belirtir.

Örneği kısıtlamak için DBMS tarafından sağlanan MySQL sorgularına özel operatörler eklenir. Benzersiz (benzersiz) örnek veriler farklı olarak kullanılır ve koşulları belirtmek için kullanılır. Örnek olarak yukarıdaki tabloda geçerli olan, adla ilgili bilgi gerektiren bir isteği düşünebilirsiniz. Satış departmanında çalışan çalışanlar. Sorgunun yapısı aşağıdaki tabloya benzeyecektir.

İç içe geçmiş bir sorgu kavramı

Ancak yukarıda belirtildiği gibi DBMS'in ana özelliği, iç içe geçmiş MySQL sorgularını işleme yeteneğidir. Neye benzemek gerekir? İsminden mantıklı olarak bunun, iki veya daha fazla sorunun belirli bir hiyerarşisinde oluşturulmuş bir sorgu olduğu açıktır. Teorik olarak DBMS'nin özelliklerini incelemek için, MySQL'in ana sorguda iç içe yerleştirilebilen MySQL sorguları sayısına kısıtlamalar getirmediği söylenir. Bununla birlikte, pratikte deney yapabilir ve ikinci on iç içe geçmiş sorgulardan sonra tepki süresinin ciddi bir şekilde artacağından emin olabilirsiniz. Her durumda, pratikte son derece karmaşık bir MySQL sorgusu gerektiren görevler bulunmamaktadır. Sorgu, en fazla 3-5 iç içe geçmiş hiyerarşiye ihtiyaç duyabilir.

İç içe geçmiş sorgular oluşturma

Okunan bilgileri analiz ederken, iç içe geçmiş sorguların nerede kullanılacağına ve yapıyı karmaşık hale getirmeksizin sorunların basit olanlara bölünmesiyle sorunun çözülmesinin imkansız olup olmadığı konusunda bir takım sorular ortaya çıkar. Uygulamada, iç içe geçmiş sorgular karmaşık problemleri çözmek için kullanılır. Bu tür bir soruna, durumun daha önceden bilinmediği durumlar vardır; buna göre, daha sonraki değer örnekleme kısıtlamaları ortaya çıkacaktır. Normal MySQL sorgusunu kullanırsanız bu tür problemleri çözmek imkansızdır. Hiyerarşilerden oluşan bir sorguda zamanla değişebilen veya önceden bilinmeyen bir kısıtlama için bir arama yapılacaktır.

Yukarıdaki tabloyu göz önüne alırsak, aşağıdaki örnek karmaşık bir sorun olarak gösterilebilir. Satış departmanının başı olan Grigory Grigoryevich Grishin'e tabi olan çalışanlar hakkında temel bilgileri öğrenmemiz gerektiğini varsayalım . Bir istek oluştururken kimlik numarasını bilmiyoruz. Bu nedenle başlangıçta bunu bilmeliyiz. Bunu yapmak için ana sorunun çözümünü bulmanıza ve ana MySQL sorgusunu tamamlamanıza yardımcı olacak basit bir sorgu kullanılır. Sorgu açıkça, alt sorunun, ana isteğin kısıtlamasını belirleyen çalışanın kimlik numarasını aldığını gösterir:

Bu durumda, herhangi bir madde, bu tür baş harfleri olan birkaç çalışan varsa, hataların oluşmasını dışarıda bırakmak için kullanılır.

sonuçlar

Özetlemek gerekirse, MySQL'in, verileri depolamak ve işlemek için zengin bir araç cephaneliğine sahip güçlü bir araç olması nedeniyle, sorgular oluşturmaktan daha kolay hale getiren başka birçok ek özellik bulunduğunu belirtmek gerekir.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 tr.atomiyme.com. Theme powered by WordPress.