SQL
x
use dewiki_p; set @ns:=0;
#use commonswiki_p;set @ns:=6;
set @iso1:='TH';
/*
'XA', 'XI', 'XN', 'XO', 'XP', 'XS',
'AE','AF','AX','AL','AS','AD','AO','AI','AQ','AG','AR','AM','AW','AU','AT','AZ',
'BS','BH','BD','BB','BL','BY','BE','BZ','BJ','BM','BT','BO','BQ','BA','BW','BV','BR','BN','BG','BF','BI',
'CM','CA','CH','CV','CF','CL','CN','CX','CC','CO','CG','CD','CK','CR','CI','CU','CW','CY','CZ',
'DE','DK','DJ','DM','DO','DZ',
'EC','EG','EH','ER','EE','ES','ET',
'FK','FO','FJ','FI','FR','FX',
'GA','GB','GM','GE','GF','GH','GI','GR','GL','GD','GP','GU','GS','GT','GG','GN','GQ','GW','GY',
'HT','HM','HN','HK','HR','HU',
'IS','IN','IO','ID','IR','IQ','IE','IM','IL','IT',
'JM','JP','JE','JO','KZ','KE','KH','KI','KM','KN','KP','KR','KW','KG','KY',
'LA','LB','LC','LV','LK','LS','LR','LY','LI','LT','LU',
'MO','MK','MF','MG','MW','MY','MV','ML','MT','MH','MQ','MR','MU','MX','FM','MD','MC','MN','ME','MS','MA','MZ','MM',
'NA','NR','NP','NL','NC','NZ','NI','NE','NG','NU','NF','MP','NO','OM',
'PK','PW','PS','PA','PF','PG','PY','PE','PH','PM','PN','PL','PT','PR','QA',
'RE','RO','RU','RW','RS',
'SM','ST','SA','SH','SN','SC','SL','SG','SX','SK','SI','SB','SO','SS','SD','SR','SJ','SZ','SE','SV','SY',
'TD','TF','TW','TJ','TZ','TH','TL','TG','TK','TO','TT','TN','TR','TM','TC','TV',
'UG','UA','US','UM','UY','UZ',
'VA','VC','VU','VE','VN','VG','VI',
'WF','WS','YE','YT','ZA','ZM','ZW'
*/
#set @iso2:='' or code
set @iso2:='';
select distinct sqrt((gt_lat - cen_gt_lat)*(gt_lat - cen_gt_lat) + (gt_lon - cen_gt_lon)*(gt_lon - cen_gt_lon)) as distanz_ungefaehr,
gt_lat, gt_lon, gt_page_id, gt_name,
p1.page_namespace as ns,
p1.page_title as title,
gt_country,gt_region FROM geo_tags AS g1 JOIN page AS p1 ON g1.gt_page_id = p1.page_id,
(select avg(gt_lat) cen_gt_lat,avg(gt_lon) cen_gt_lon,count(*) from geo_tags
where
case
when @iso2=''
then gt_country=@iso1
else gt_country=@iso1 and gt_region=@iso2
end) as zentrumdavon
where
case
when @iso2=''
then gt_country=@iso1
else gt_country=@iso1 and gt_region=@iso2
end
having ns= @ns
order by 1 desc limit 500;
select distinct sqrt((gt_lat - cen_gt_lat)*(gt_lat - cen_gt_lat) + (gt_lon - cen_gt_lon)*(gt_lon - cen_gt_lon)) as distanz_ungefaehr,
gt_lat, gt_lon, gt_page_id, gt_name,
p1.page_namespace as ns,
p1.page_title as title,
gt_country,gt_region FROM geo_tags AS g1 JOIN page AS p1 ON g1.gt_page_id = p1.page_id,
(select avg(gt_lat) cen_gt_lat,avg(gt_lon) cen_gt_lon,count(*) from geo_tags
where gt_country=@iso1 and gt_region is null
) as zentrumdavon
where gt_country=@iso1 and gt_region is null
having ns= @ns
order by 1 desc limit 500;
#and gt_region is null
By running queries you agree to the Cloud Services Terms of Use and you irrevocably agree to release your SQL under CC0 License.
All SQL code is licensed under CC0 License.