SQL: SELECT city,country,sum(events) ev FROM `joe` where country like 'shah_alam' and action like 'hairdresser_%'  group by 1,2 order by ev desc limit 1
ROWS: 0
SQL: SELECT city,country,sum(events) ev FROM `joe` where city like 'shah_alam' and action like 'hairdresser_%'  group by 1,2 order by ev desc limit 1
ROWS: 1
ROW 0: {"city":"Shah Alam","country":"Malaysia","ev":"2"}
SQL: SELECT 	sVal FROM `joe_settings` where sTopic like 'hairdresser' and sName like 'color'
ROWS: 5
ROW 0: {"sVal":"'25' => '#f2b434'"}
ROW 1: {"sVal":"'>25' => '#990099'"}
ROW 2: {"sVal":"'20' => '#259c5d'"}
ROW 3: {"sVal":"'10' => '#4882ef'"}
ROW 4: {"sVal":"'0' => '#d7483f'"}
SQL: SELECT 	sVal FROM `joe_settings` where sTopic like 'hairdresser' and sName like 'nice'
ROWS: 1
ROW 0: {"sVal":"a Hairdresser (or Barber, Hair stylist, etc.)"}
SQL: SELECT 	sVal FROM `joe_settings` where sTopic like 'hairdresser' and sName like 'niceTagline'
ROWS: 0
SQL: SELECT CASE
        WHEN LOWER(action) LIKE 'hairdresser_>25' THEN 30
        ELSE CAST(REPLACE(LOWER(action),'hairdresser_','') AS UNSIGNED)
    END AS action,sum(events) events FROM joe where lower(city) like 'Shah Alam' and country like 'Malaysia' and action like 'hairdresser_%' group by 1 order by action desc
ROWS: 2
ROW 0: {"action":"30","events":"1"}
ROW 1: {"action":"0","events":"1"}
SQL: SELECT CASE
        WHEN LOWER(action) LIKE 'hairdresser_>25' THEN 30
        ELSE CAST(REPLACE(LOWER(action),'hairdresser_','') AS UNSIGNED)
    END AS action,sum(events) events FROM joe where country like 'Malaysia' and action like 'hairdresser_%' group by 1 order by action desc
ROWS: 5
ROW 0: {"action":"30","events":"28"}
ROW 1: {"action":"25","events":"1"}
ROW 2: {"action":"20","events":"614"}
ROW 3: {"action":"10","events":"798"}
ROW 4: {"action":"0","events":"3829"}
SQL: SELECT region, sum(action*events) action, sum(events) events from (SELECT CASE
        WHEN LOWER(action) LIKE 'hairdresser_>25' THEN 30
        ELSE CAST(REPLACE(LOWER(action),'hairdresser_','') AS UNSIGNED)
    END AS action, region,sum(events) events FROM joe where country like 'Malaysia' and action like 'hairdresser%' group by 1,2) g group by 1
ROWS: 10
ROW 0: {"region":"Federal Territory of Kuala Lumpur","action":"2735","events":"2217"}
ROW 1: {"region":"Johor","action":"0","events":"1"}
ROW 2: {"region":"Malacca","action":"0","events":"1"}
ROW 3: {"region":"Negeri Sembilan","action":"20","events":"1"}
ROW 4: {"region":"Pahang","action":"0","events":"1"}
ROW 5: {"region":"Penang","action":"20","events":"2"}
ROW 6: {"region":"Perak","action":"0","events":"1"}
ROW 7: {"region":"Sabah","action":"18300","events":"1221"}
ROW 8: {"region":"Sarawak","action":"0","events":"611"}
ROW 9: {"region":"Selangor","action":"50","events":"1214"}
SQL: SELECT country, sum(action*events) action, sum(events) events from (SELECT CASE
        WHEN LOWER(action) LIKE 'hairdresser_>25' THEN 30
        ELSE CAST(REPLACE(LOWER(action),'hairdresser_','') AS UNSIGNED)
    END AS action, country,sum(events) events FROM joe where country not like '(not set)' and action like 'hairdresser%' group by 1,2) g group by 1 having sum(events)>4
ROWS: 100
ROW 0: {"country":"Algeria","action":"10","events":"40"}
ROW 1: {"country":"Argentina","action":"4210","events":"249"}
ROW 2: {"country":"Armenia","action":"0","events":"321"}
ROW 3: {"country":"Aruba","action":"20","events":"55"}
ROW 4: {"country":"Australia","action":"95735","events":"68880"}
ROW 5: {"country":"Austria","action":"8645","events":"1110"}
ROW 6: {"country":"Bahrain","action":"2880","events":"290"}
ROW 7: {"country":"Bangladesh","action":"55","events":"339"}
ROW 8: {"country":"Belgium","action":"1135","events":"5256"}
ROW 9: {"country":"Bermuda","action":"420","events":"21"}
SQL: SELECT lat, lon,t.city city, sum(action*events) action, sum(events) events from (SELECT CASE
        WHEN LOWER(action) LIKE 'hairdresser_>25' THEN 30
        ELSE CAST(REPLACE(LOWER(action),'hairdresser_','') AS UNSIGNED)
    END AS action, city,sum(events) events FROM joe where country like 'Malaysia' and action like 'hairdresser%' group by 1,2) t left join citiesLatLon ltln on t.city = ltln.city where lat is not null and t.city not like '(not set)' group by 1,2,3 having sum(events)>2
ROWS: 3
ROW 0: {"lat":"3.1278871","lon":"101.5944885","city":"Petaling Jaya","action":"20","events":"1134"}
ROW 1: {"lat":"3.139003","lon":"101.686855","city":"Kuala Lumpur","action":"2735","events":"2217"}
ROW 2: {"lat":"5.980408","lon":"116.0734568","city":"Kota Kinabalu","action":"18300","events":"1221"}
SQL: SELECT city,country,sum(events) ev FROM `joe` where country like 'Shah Alam' and action like '{$action_string}_%'  group by 1,2 order by ev desc limit 1
ROWS: 0
SQL: SELECT city,country,sum(events) ev FROM `joe` where city like 'Shah Alam' and action like '{$action_string}_%'  group by 1,2 order by ev desc limit 1
ROWS: 0
SQL: SELECT * FROM joe where lower(city) like 'Shah Alam' and country like 'Malaysia' and action like '{$action_string}__%' order by events desc ROWS: 0 How much should I tip a hairdresser in Shah Alam? | Joe tips, be like Joe

How much do you tip a Hairdresser (or Barber, Hair stylist, etc.)?

In Shah Alam, Malaysia ?


Sadly, only 50% said they would tip a Hairdresser (or Barber, Hair stylist, etc.).
1 people tip 30% 1 people tip 0%

Find out what to tip your: Hairdresser, food delivery person, taxi driver




In all of Malaysia?


Sadly, only 27% said they would tip a Hairdresser (or Barber, Hair stylist, etc.).
28 people tip 30% 1 people tip 25% 614 people tip 20% 798 people tip 10% 3829 people tip 0%

Tipping around the world



SQL: Select count(distinct country) countries,count(distinct city) cities,sum(case when action not in (select min(action) from joe where  action like 'hairdresser_%') then events else 0 end) as love, sum(events) users from joe where action like 'hairdresser_%' ;
ROWS: 1
ROW 0: {"countries":"145","cities":"4093","love":"304013","users":"699495"}

How big is our data?


4093

CITIES

145

Countries

699495

USERS

304013

Tip more than 0%

Tipping by city

Looking for other cities in Malaysia?

SQL: SELECT city from (SELECT city,sum(events) FROM ( SELECT * FROM joe) a  left join ( select country country_2  FROM joe  where lower(city) like 'Shah Alam'  order by events desc limit 1 ) b   on a.country = b.country_2 where country_2 is not null  and city not like 'Shah Alam' and city not like '(not set)' group by 1 order by 2 desc ) yo  limit 25
ROWS: 25
ROW 0: {"city":"Kuala Lumpur"}
ROW 1: {"city":"Kota Kinabalu"}
ROW 2: {"city":"Petaling Jaya"}
ROW 3: {"city":"Kuching"}
ROW 4: {"city":"Subang Jaya"}
ROW 5: {"city":"Johor Bahru"}
ROW 6: {"city":"Kajang"}
ROW 7: {"city":"Ampang Jaya"}
ROW 8: {"city":"Miri"}
ROW 9: {"city":"Puchong"}
Kuala Lumpur   -  Kota Kinabalu   -  Petaling Jaya   -  Kuching   -  Subang Jaya   -  Johor Bahru   -  Kajang   -  Ampang Jaya   -  Miri   -  Puchong   -  George Town   -  Sungai Petani   -  Batu Caves   -  Malacca   -  Butterworth   -  Bayan Lepas   -  Klang   -  Ipoh   -  Segamat District   -  Cyberjaya   -  Seremban   -  Bandar Tun Razak   -  Kuantan   -  Bukit Mertajam   -  Rawang   -  

Other resources



SQL: SELECT * FROM joe_serp WHERE city like 'Shah Alam'
ROWS: 0

Why even tip?



Looking to download our data?

You can find the latest file here latest.csv (208.5 kb)

Looking for other cities in the world?

SQL: SELECT city from ( SELECT city,sum(events) FROM joe  WHERE city not like '(not set)' and city not like 'Shah Alam' group by 1 order by 2 desc  limit 100) c ORDER BY RAND() limit 20
ROWS: 20
ROW 0: {"city":"Barcelona"}
ROW 1: {"city":"San Jose"}
ROW 2: {"city":"Nottingham"}
ROW 3: {"city":"Stockholm"}
ROW 4: {"city":"Richmond"}
ROW 5: {"city":"Ottawa"}
ROW 6: {"city":"Quezon City"}
ROW 7: {"city":"Dallas"}
ROW 8: {"city":"Irvine"}
ROW 9: {"city":"Burnaby"}
Tipping in Riga , Tipping in Wroclaw , Tipping in Austin , Tipping in Warsaw , Tipping in San Francisco , Tipping in Leeds , Tipping in Philadelphia , Tipping in Prague , Tipping in Vilnius , Tipping in Christchurch , Tipping in Edinburgh , Tipping in Seattle , Tipping in Charlotte , Tipping in Hamilton , Tipping in Burnaby , Tipping in Frankfurt , Tipping in Washington , Tipping in Auckland , Tipping in Winnipeg , Tipping in San Antonio ,

Talk about tipping