close
Ҷаҳиш ба мӯҳтаво

Select (SQL)

Мавод аз Википедиа — донишномаи озод

SELECT (ба забони англисӣ, маънояш «интихоб кардан») — оператори забони DML (Data Manipulation Language) -и SQL мебошад,ки барои бозгардонидани маҷмӯи додаҳо (интихоб) аз базаи додаҳо,истифода мешавад.

Дар бисёр ҳолатҳо маълумотҳо аз як ҷадвал ва якчанто ҷадвалҳои базаи додаҳоинтихоб карда мешавад. Дар ҳамон СИБД, ки дар он тартиб (англ. view) ва тартиби захирашуда (англ. stored procedure) мавҷуд аст, инчунини маҷмӯи маълумоти лозимиро гирифтан мумкиан аст.

Дар вақти ташкил намудани дархости SELECT истифодабаранда маҷмӯи маълумотҳои интизориро мегузорад: намуд (маҷмӯи сутунҳо) ва дохили он.

Запрос выполняется следующим образом: сначала извлекаются все записи из таблицы, а затем для каждой записи набора проверяется её соответствие заданному критерию. Если осуществляется слияние из нескольких таблиц, то сначала составляется произведение таблиц, а уже затем из полученного набора отбираются требуемые записи.

Сохти оператор

[вироиш | вироиши манбаъ]

Оператори SELECT чунин сохт дорад:

SELECT 
       [DISTINCT | DISTINCTROW | ALL]
       select_expression,...
   [FROM table_references]
     [WHERE where_definition]
     [GROUP BY {unsigned_integer | col_name | formula}]
     [HAVING where_definition]
     [ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC],...]

Формати дархост бо истифодабарии ин оператор:

SELECT рӯйихати майдонҳо FROM рӯйихати ҷадвалҳо WHERE шарт…

Калимаҳои калиОсндии асосие, ки ба дархости SELECT таалуқ доранд инҳоянд:

  • WHERE — барои муайян кардани сатрҳое, ки бояд интихоб шаванд ё ба GROUP BY дохил шаванд истифода мешавад.
  • GROUP BY — барои иттиҳод намудани сатрҳое, ки мазмуни якхела доранд истифода мешавад.
  • HAVING — барои муайян намудани сатрҳое, ки баъди GROUP BY бояд итихоб шаванд истифода мешавад.
  • ORDER BY — истифода мешавад, барои муайян намудан дар вақти баровардани натиҷа, кадом сутун барои ба навъҳо ҷудокардан истифода шавад.
Ҷадвали «T» Дархост Натиҷа
C1C2
1a
2b
SELECT * FROM T;
C1C2
1a
2b
C1C2
1a
2b
SELECT C1 FROM T;
C1
1
2
C1C2
1a
2b
SELECT * FROM T WHERE C1 = 1;
C1C2
1a
C1C2
1a
2b
SELECT * FROM T ORDER BY C1 DESC;
C1C2
2b
1a

Барои ҷадвали T дархости

SELECT * FROM T;

ҳамаи сутунҳо ва сатрҳои ин ҷадвалро бармегардонад. Барои ҳамон ҷадвал дархости

SELECT C1 FROM T;

маълумоти дар сутуни C1 ҳаммаи сатрҳои дар ҷадвал бударо мебарорад.