Сұраныс құру (ДҚ бір не бірнеше кестелерінен жолдарды таңдау) үшін SELECT оператор қолданылады. Сұраныстың нәтижесі- үнемі кесте болады. Сұраныс нәтижесі жаңа кесте құруға қолданылу мүмкін. Сұраныс нәтижесінде пайда болған кесте басқа сұраныста қолданылу мүмкін.
SELECT операторының жалпы формасы:
SELECT бағаналар FROM кестелер [WHERE шарттар] [GROUP BY топ [HAVING топтық_шарттар] ] [ORDER BY өріс_аты] [LIMIT шектеулер];
SELECT операторы
Барлық кесте бағандарын шығару керек болса, select операторынан кейін тізбектеп жазбаларды қоюға қажеті жоқ, тізімді тек * символымен ауыстырса жеткілікті. Мысал:
SELECT операторы
Бар мәнді нәтижеде қайта қайталамау үшін сұраныста DISTINCT кілт сөзін қолдану керек, мысалы:
Таңдау шарты
Шығарылатын жолдар санын өзгерту жағдай өте жиі кездеседі. Аталған іздеу критерийларын қанағаттандыратын жазба таңдау үшін WHERE конструкциясын қолдану қажет :
Таңдау шарты
Шығарылатын жолдар санын өзгерту жағдай өте жиі кездеседі. Аталған іздеу критерийларын қанағаттандыратын жазба таңдау үшін WHERE конструкциясын қолдану қажет :
Таңдау шарты
Бар мәнді нәтижеде қайта қайталамау үшін сұраныста DISTINCT кілт сөзін қолдану керек, мысалы:
Сұрыптау
ДҚ-да сақталу тәртібі бойынша орналасқан жазбалар - таңдаудың нәтижесі болып табылады. Бағаналар арасынан біреуінің мәндерін сұрыптау үшін order by конструкциясынан кейін сол бағананы көрсету керек. Мысалы:
Сұрыптау
Жазбалардың сұрыптауын бірнеше бағана бойынша жүргізуге болады (оларды order by сөзінен соң үтір қою арқылы көрсету керек). order by конструкциясында келтірілген бағаналар саны шектеусіз.
Үнсіз келісім бойынша сұрыптау тік тәртіп бойынша орындалады (сұрыптау өрісінің жазбалары ең кiшi мәнінен ең үлкенге дейiн орналасады). Кері тәртіппен сұрыптауы desc кілттік сөзін қолдану арқылы жүзеге асырылады:
Тік сұрыптау asc кілттік сөзін қолдану арқылы іске асырылады, бірақ жазбалар үнсіз келісім бойынша тік тәртіпте іріктелетіндіктен, аталған кілттік сөз жазылмайды
Таңдауды шектеу
Мысал: Сұраныс алғашқы 5 жазба шығарады, осы кезде b_count өрісі бойынша кері сұрыптау жүргізіледі:
Жазбаларды топтау
NULL – ге тең емес көрсетілген бағана мәндері кестедегі жол санын шығаратын count( ) функциясын пайдалануға мысал:
Мысал: catalogs кестеден cat_ID өрістің максималды мәні бойынша жазбаларды шығарып алу
Функцияларды қолдану
Таңдауда арнайы есептерді шешуде MySQL-дің ендірілген функциялары қолайлы болады. Көптеген функциялар SELECT және WHERE түрінде пайдалану тағайындалған. Арнайы топтау функциялары да бар. SELECT операторын кестесіз пайдалану мүмкін. SELECT операторы калькулятор ретінде қолданылу мүмкін:
MySQL-де қарапайым арифметикалық операторлар қолданылады: қосу(+), азайту(-), көбейту(*), бөлу(/) және бүтін санды бөлу DIV . Нөлге бөлу NULL қауіпсіз нәтиже береді.
Салыстыру операторы
Сұранысты түзулегенде пайдаланылады
Салыстыру операторымен жұмыс жасау кезінде NULL мәнін салыстыру нәтижесінде NULL болады:
Логикалық операторлар
Оператор
Мысал
Мәні
AND
n AND m
Логикалық ЖӘНЕ: ақиқат AND ақиқат = ақиқат,
жалған AND кез- келген = жалған . Все остальные выражения оцениваются как NULL
OR
n OR m
Логикалық НЕМЕСЕ: ақиқат OR кез- келген = ақиқат,
NULL OR жалған = NULL, NULL OR NULL = NULL, жалған OR жалған = жалған
NOT
NOT n
Логикалық ЖОҚ: NOT ақиқат = жалған , NOT жалған = ақиқат.
NOT NULL = NULL
XOR
n XOR m
Логикалық исключающее НЕМЕСЕ: ақиқат XOR ақиқат = жалған ,
ақиқат XOR жалған = ақиқат, жалған XOR ақиқат = ақиқат,
жалған XOR жалған = жалған ,
NULL XOR кез- келген = NULL, кез- келген XOR NULL = NULL
Бақылау сұрақтары:
1Шығарылатын жол санын өзгерту командасы 2 MY SQL ДҚБЖ функциялары? 3 Для чего используется оператор where оператор не үшін қолданылады? 4 Салыстыру операторлары 5 Логикалық операторлар 6 Арифметикалық операторлар 7 Жазбаларды топтастыру командасы