gpt4 book ai didi

php - MySQL 查询(数据库)- 试图只显示某些值

转载 作者:搜寻专家 更新时间:2023-10-30 21:52:02 24 4
gpt4 key购买 nike

你好,我有一点问题。我的数据库中有两个表。 enter image description here

如您所见,我将所有员工都放在一个选项卡中,而我在这里试图实现的是在给定选项卡中仅显示相关员工。因此,例如,客户服务部门的员工不会显示在“销售”选项卡中。

$query = mysql_query("SELECT * "."FROM employees, dept_emp "."WHERE employees.emp_no = dept_emp.emp_no");

感谢您的关注和帮助:)

最佳答案

您的 WHERE 子句是无用的,因为它基本上只是重申 JOIN 条件。试试这个:

SELECT *
FROM employees AS e
INNER JOIN dept_emp AS de ON e.emp_no = de.emp_no
WHERE de.dept_no = '?'

显然 ? 将替换为您实际尝试过滤的 dept_no 值。

根据您关于查看查询限制/分页的问题,这是通过 SQL LIMIT 子句完成的。该子句可以用几种不同的方式表达。

这首先只返回最大行数:

LIMIT 100 <-- shows first 100 rows from the result set

以下两种形式的语法用于结果分页:

LIMIT 0, 100 <-- show first 100 rows from the result set (start at 0 offset, and return a max of 100 rows
LIMIT 100, 100 <-- show rows 101-200 from the result set (start at 100 offset and return max of 100 rows)

或者:

LIMIT 100 OFFSET 0 <-- first 100 rows
LIMIT 100 OFFSET 100 <-- rows 101-200

所以把它们放在一起

SELECT *
FROM employees AS e
INNER JOIN dept_emp AS de ON e.emp_no = de.emp_no
WHERE de.dept_no = '?'
ORDER BY e.emp_no
LIMIT 0,100

请注意,我还添加了一个 ORDER BY 子句。这对于分页很重要,因为常规无序 SELECT 不能保证顺序。如果您尝试在没有 ORDER BY 的情况下进行分页,您可能会在多个“页面”中返回同一行。

关于php - MySQL 查询(数据库)- 试图只显示某些值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13636022/

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