SQL для Вікіпроектів/Список сторінок: відмінності між версіями
нема опису редагування
Ilya (обговорення | внесок) Створена сторінка: Виведемо всі колонки із таблиці сторінок page ([https://quarry.wmflabs.org/query/14106 Запит у Quarry]) <tt> SELECT... |
Ilya (обговорення | внесок) Немає опису редагування |
||
Рядок 1:
Виведемо всі колонки із таблиці сторінок page ([https://quarry.wmflabs.org/query/14106 Запит у Quarry])
<source lang="sql>
SELECT *
FROM ukwikibooks_p.page
</source>
Запит повертає всі рядки та всі колонки із таблиці сторінок page.
Line 46 ⟶ 45:
Для цього виведемо із таблиці page лише колонки, які нас цікавлять: page_namespace і page_title ([https://quarry.wmflabs.org/query/14110 Запит у Quarry])
<source lang="sql>
SELECT
page_namespace, page_title
FROM
ukwikibooks_p.page
</
===== Сортування =====
Line 97 ⟶ 96:
Ми можемо вказати це явно, додавши до запиту <code lang="sql">ORDER BY page_namespace, page_title</code>, і отримати такий самий результат ([https://quarry.wmflabs.org/query/14111 Запит у Quarry])
<source lang="sql>
SELECT
page_namespace, page_title
Line 104 ⟶ 103:
ORDER BY
page_namespace, page_title
</
Тепер отримаємо такий же порядок сортування, як був у нас спочатку, коли ми отримували всі колонки. Для цього додамо сортування за колонкою page_id: <
([https://quarry.wmflabs.org/query/14110 Запит у Quarry])
<source lang="sql>
SELECT
page_id, page_namespace, page_title
Line 116 ⟶ 115:
ORDER BY
page_id
</
Тепер результат відсортовано за page_id і перші рядки виглядають так:
Line 283 ⟶ 282:
Додамо умову, що вибираємо лише сторінки із основного простору (простору статей)
<tt><pre> WHERE page_namespace = 0 </pre></tt> і виведемо вікірозмітку посилання на статті ([https://quarry.wmflabs.org/query/14113 код у Quarry])
<source lang="sql>
SELECT
CONCAT('[[', page_title, ']]') AS page_link
Line 290 ⟶ 289:
WHERE
page_namespace = 0
</
Тепер ми можемо вивести список сторінок, що містить повне посилання на сторінку, яке включає і префікс простору назв ([https://quarry.wmflabs.org/query/14112 код у Quarry])
<source lang="sql>
SELECT
page_id,
Line 306 ⟶ 305:
ORDER BY
page_id
</
Результат:
Line 342 ⟶ 341:
|1659||14||Українська_мова||[[:{{ns:14}}:Українська_мова]]
|}
|