2017-05-24 7 views
0

Wmflabs(https://quarry.wmflabs.org/)の "Quarry"を使用する。2つのウィキペディアの中から大きな記事を選択

私はこれがMySQLだと理解しています。

enwikiの記事よりもサイズが大きいドイツ語のwikiからすべての記事を選択するにはどうすればよいですか?

ここではコードを使用しています。私はde_lenが必要ですが、それを得る方法はわかりません。

USE enwiki_p; 

SELECT 
     page_title en_title, 
     page_len en_len, 
     ll.ll_title as de_title 
FROM page 
JOIN langlinks ll 
    ON ll_from = page_id 
WHERE page_namespace = 0 
GROUP BY page_id 
HAVING max(CASE ll_lang WHEN 'de' THEN 1 ELSE 0 END) = 0 
LIMIT 10 
+0

はあなたがしようとした場所を正確にあなたが捕まってしまったかを説明することはできます: ソリューションは、これでしょうか? – Tgr

答えて

1

あなたは良い比較のために、2つのウィキ、プラスの関係のために、関連する言語間リンクから適切corresponing記事(ページ)のページサイズを取得するために、2つのデータベースから、最低3つのテーブルで作業する必要があります。

SELECT 
     enp.page_title as en_title, 
     enp.page_len as en_len, 
     dep.page_title as de_title, 
     dep.page_len as de_len   
FROM enwiki_p.page enp 
JOIN enwiki_p.langlinks enll 
    ON enll.ll_from = enp.page_id and ll_lang="de" 
JOIN dewiki_p.page dep 
    ON enll.ll_title = REPLACE(dep.page_title, '_', ' ') 
WHERE enp.page_namespace = 0 and enp.page_is_redirect = 0 
    AND dep.page_namespace = 0 and dep.page_is_redirect = 0 
GROUP BY enp.page_id 
HAVING dep.page_len > enp.page_len 
ORDER BY dep.page_len DESC 
LIMIT 100 
関連する問題