唐武德三年(620年)于今市区西南33千米王庄堡村别置高唐县,属北温州。贞观元年(627年)废高唐县,因永安县名与涪州的永安县(今重庆市奉节县)重名,遂产生更名之议。因郑兴以“孝行闻于朝”,于是唐太宗李世民勒赐改永安县为孝义县,属汾州,改郑兴所居的故里为“孝义里”。另据《读史方舆纪要》载,县名以县境有孝水和义水得名。宋太平兴国元年(976年)为避太宗赵光义名讳,改中阳县。次年太宗改名,县复称孝义。熙宁五年(1072年)废入介休县。元祐元年(1086年)复置孝义县,属汾州。明、清属汾州府。
民国初年属冀宁道,道废后直属省。
1949年属汾阳专区,1951年属榆次专区,1958年废入介休县,1961年复置,属晋中专区,1967年属晋中地区,1971年划归新成立的吕梁地区。
1992年2月10日,经国务院批准,孝义撤县设市,为县级市。2003年10月23日,国务院批准撤销吕梁地区,设立地级吕梁市,县级孝义市改由山西省直辖、地级吕梁市代管。
(图册《孝义风貌》中部分图片来源:
)