gpt4 book ai didi

mysql - 查找包含特定数据的字段名称(mySql)

转载 作者:行者123 更新时间:2023-11-29 21:37:34 29 4
gpt4 key购买 nike

我得到了名为“teachers_db”的表,其字段名称为:

teacher_name 
instrument1
instrument2
payment1
payment2

在我的程序中,我得到了教师名单以及他们所教的乐器。即:

Mathew - piano
Mathew - drums
Adam - guitar

我想在 mySQL 中编写一个代码行,该代码行获取 teacher_nameinstrument (instrument1 =“piano”或 instrumnet2 =“drums”等),并且返回其付款(如果是钢琴则为 payment1,如果是鼓则为 playment2)。

我正在为这个问题苦恼,请帮助:)

最佳答案

获取结果的一种方法是使用两个单独的查询,并结合 UNION ALL 运算符。例如:

 SELECT q.teacher_name
, q.instrument1 AS instrument
, q.payment1 AS payment
FROM teachers_db q
WHERE q.instrument1 <> ''
UNION ALL
SELECT r.teacher_name
, r.instrument2 AS instrument
, r.payment2 AS payment
WHERE r.instrument2 <> ''
ORDER BY 1,2
<小时/>

另一种方法:

SELECT t.teacher_name
, CASE i.n WHEN 1 THEN t.instrument1 WHEN 2 THEN t.instrument2 END AS instrument
, CASE i.n WHEN 1 THEN t.payment1 WHEN 2 THEN t.payment2 END AS payment
FROM (SELECT 1 AS n UNION ALL SELECT 2) i
CROSS
JOIN teachers_db t
HAVING instrument <> ''
ORDER BY 1,2

关于mysql - 查找包含特定数据的字段名称(mySql),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34800497/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com