msyql獲取數據字典內容的函數

開發中會將改動較大的內容維護到數據字典中便於後期修改,但在SQL增刪改操作時就會遇到如何將字典中對應的值取出來。這時候就需要用到函數來操作。
一、在mysql庫中新建一個函數,名稱:f_get_dict_name

CREATE DEFINER=`root`@`%` FUNCTION `f_get_dict_name`(in_type VARCHAR(40), in_code VARCHAR(40)) RETURNS varchar(255) CHARSET utf8
BEGIN
	DECLARE out_name VARCHAR(255) DEFAULT '';
	SELECT `value` INTO out_name FROM sys_dict WHERE type=in_type AND `code`=in_code limit 1;
	IF out_name='' OR out_name IS NULL THEN
		SET out_name = in_code;
	END IF;
	RETURN out_name;
END

二、在SQL語句中的使用

SELECT
		a.id,
		a.waybill_Number,
		a.start_goods_address,
		a.end_goods_address,
		b.license_Plate_Number,
		a.error_status,
		f_get_dict_name ( 'abnormal', a.error_status ) AS error_show
	FROM
		t_waybillorder a
		LEFT JOIN t_vehiclemanagement b ON a.car_id = b.id 

f_get_dict_name (字典表中名字, 要查詢的名字) AS error_show ,返回字典表中對應的value值

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章