我没有找到任何有关将我选择的 MySQL 表格列插入单个 PHP 数组的问题的解决方案。
$sql = "SELECT * FROM zaznam,client WHERE zaznam.id_client=client.id_client
AND zaznam.id_client=1";
$result = mysql_query($sql);
$data = array();
while ($row = mysql_fetch_assoc($result)) {
$data[] = $row;
}
echo json_encode($data);
-Edit:我需要“zaznam.date”,“zaznam.rozdil”和“client.limit”,但不是WHERE parametr中的id_client。
此代码将数据插入到表格的所有列中。但我希望达到解决方案,我只能在这个数组中插入一些列。
我正在尝试大约3个小时来找到关于这件事情的任何想法。也许我错过了一些东西,比如你链接我的解决方案,它也会很棒。
我希望我把你需要的所有信息都用来帮助我:)
Chosse
答案 0 :(得分:3)
不是选择所有列(SELECT *
),而是在SELECT
子句后列出所需的列。
E.g:
SELECT zaznam.id_client, zaznam.other_field, client.name, client.something_else
FROM zaznam,client
WHERE zaznam.id_client=client.id_client
AND zaznam.id_client=1
答案 1 :(得分:0)
快速SQL教程..
一个表可以包含您希望它拥有的列数,例如我们可以调用此表Users
ID | Name | Email | DateOfBirth
您可以通过
从此表中选择ALL
条记录
SELECT * FROM Users
如果您只需要1列,则需要命名
SELECT Email FROM Users
让我们在
中添加一些数据 ID | Name | Email | DateOfBirth
1 | Test | test@example.com | 01/01/1990
2 | Test2 | test2@example.com | 01/01/1990
如果我们只想使用ID = 2
获取记录,那么我们使用WHERE
子句
SELECT * FROM Users WHERE ID = 2
然后我们可以选择仅选择某些列,只查看ID = 2
SELECT Name, Email FROM Users WHERE ID = 2
仅仅因为我在ID
中使用WHERE
并不会影响我在选择
我可以继续但是真的......回到基础并从教程中学习SQL
对于您的特定查询,请执行此操作(就个人而言,使用INNER JOIN
代替,
分隔的联接更好更容易阅读 - 但就他们所做的而言,它们完全相同):
SELECT zaznam.date, zaznam.rozdil, client.limit
FROM zaznam
INNER JOIN client ON zaznam.id_client = client.id_client
WHERE zaznam.id_client=1