使用mysql查询获取基于语言的详细信息?
我的应用程序支持多种语言,我希望获得基于语言id的报价详细信息。 我可以加入,但我的挑战是,如果所选语言没有值,则获取默认语言文本 即 我的报价标题可以有两种语言的文本。默认语言是必需的,报价标题应该在那里。 但有时用户不会用第二语言输入报价标题, 当用户以第二语言浏览报价列表时,我想从默认语言中获取报价标题,因为所选语言报价标题不存在。 如何在单个列表查询中执行以下操作:( 我的表格结构如下所示使用mysql查询获取基于语言的详细信息?,mysql,Mysql,我的应用程序支持多种语言,我希望获得基于语言id的报价详细信息。 我可以加入,但我的挑战是,如果所选语言没有值,则获取默认语言文本 即 我的报价标题可以有两种语言的文本。默认语言是必需的,报价标题应该在那里。 但有时用户不会用第二语言输入报价标题, 当用户以第二语言浏览报价列表时,我想从默认语言中获取报价标题,因为所选语言报价标题不存在。 如何在单个列表查询中执行以下操作:( 我的表格结构如下所示 如何使用MySQL实现?在SELECT语句中使用大小写开关,为方便起见,将其封装在存储过程中 C
如何使用MySQL实现?在SELECT语句中使用大小写开关,为方便起见,将其封装在存储过程中
CREATE PROCEDURE get_offer(
IN p_language_id INT,
IN p_offer_id INT
)
BEGIN
SELECT *
FROM Offers o
JOIN Offer_details od
ON o.id = od.offers_id
JOIN languages l
ON l.id = od.languages.id
WHERE
CASE WHEN
p_language_id IS NOT NULL
THEN
p_language_id = l.id
ELSE
is_default = TRUE
END
AND p_offer_id = o.id
END
然后,如果他们的语言id设置为call get\u offer($lid,$oid)
或者如果不是call get\u offer(null,$oid)