gpt4 book ai didi

php - 对字段值做出决定并从不同的表中获取记录

转载 作者:行者123 更新时间:2023-11-30 00:50:22 25 4
gpt4 key购买 nike

我的数据库中有 2 个表。

表 1:用户 ID,姓名,电子邮件,密码,单类(class),用户类型,

表 2:用户类(class) id、fk_user_id、类(class)名称

userType 可以是 1 或 2。

现在如果 userType = 1

继续从用户表中获取。

如果 userType = 2

从包含多条记录的 userCourses 表中获取。

需要查询逻辑方面的帮助。

除非有需要,否则查询不应从 userCourses 表中获取记录。

可以使用 CASE WHEN THEN 来完成吗?

这是我尝试过的:

$query = mysql_query("SELECT name.user,email.user,password.user,userType.user,
fk_user_id.course,course_name.course
FROM CASE userType.user WHEN 1 THEN FROM users.u
WHEN 2 THEN users.user INNER JOIN userCourses.course
ON (user.id = userCourses.fk_user_id)");

示例数据:

用户类(class)

1, John, john@test.com, 123456, 1, PHP
2, Nick, nick@test.com, 654321, 2, ''

用户类(class):

1, 2, JAVASCRIPT
2, 2, C++
3, 2, Jquery

所需输出:

我只是想获取用户类(class),但是使用所需的表,如果 usertype = 1,查询不应该转到另一个表来检查记录

最佳答案

我已经发布了示例查询如下,请根据您的要求进行修改

SELECT
(CASE field1
WHEN 'A' THEN 'value is A'
WHEN 'B' THEN 'value is B'
ELSE 'value is neither A or B'
END)
FROM your_table;

SELECT
(CASE
WHEN (field1 IS NULL) THEN 'value is NULL'
WHEN (field1 = 1) THEN 'value is 1'
ELSE 'value is neither NULL or 1'
END)
FROM your_table;

关于php - 对字段值做出决定并从不同的表中获取记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21036961/

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