Php 将两个查询合并为一个查询,该查询需要来自第一个查询中第二个查询的值
我有两个SQL查询:Php 将两个查询合并为一个查询,该查询需要来自第一个查询中第二个查询的值,php,mysql,Php,Mysql,我有两个SQL查询: $res1 = mysql_query("SELECT * FROM `table1` WHERE `user`='user'"); $i = mysql_fetch_assoc($res1); $value1 = $i['num']; 以及: 如何将两个SQL查询合并为一个?我需要从第一个请求的第二个查询中获取变量的值。有可能吗?这个带有子查询的查询应该可以很好地帮助您: insert into table 2 (`name`, `num`) valu
$res1 = mysql_query("SELECT * FROM `table1` WHERE `user`='user'");
$i = mysql_fetch_assoc($res1);
$value1 = $i['num'];
以及:
如何将两个SQL查询合并为一个?我需要从第一个请求的第二个查询中获取变量的值。有可能吗?这个带有子查询的查询应该可以很好地帮助您:
insert into table 2 (`name`, `num`)
values ('name', (select `num` from table1 where `user`='user'));
这假设您只使用第二个查询中的num
,因为它似乎没有在原始代码中使用
编辑:另外,我看到这是一个insert语句,不仅仅是一个select语句,但是你可能会从阅读我写的一篇相当长的文章中受益,这篇文章涵盖了多个表和SQL,涵盖了联合、联接、子查询和其他一些内容。你能将insert语句用于。。。选择。。。语法 例如,类似于:
INSERT INTO table2 (name, num)
SELECT 'name', num
FROM table1
WHERE user='user'
(未经测试,因此请原谅此处的任何小错误…放弃此操作
最好的答案是让PHP拥有MYSQL需要的数据。任何其他方式都会造成瓶颈,效率低下 如果可以运行多个语句,则可以放置一个
在每条语句的结尾处添加代码>。我认为PDO或mysqli\uuu
可以做到这一点(如果允许的话),但是mysql\uu
(注意,没有I
)不能做到(你应该停止使用它,因为它已经被弃用了,过时了,不再相关)。请考虑使用PDO,因为它更安全,并且有很多帮助方法。哦,然后,您应该使用php来保存数据,而不是使用SQL。php不处理SQL。使用php服务器获取数据,然后将其交给SQL。是的,SQL可以,但它不是明智的,它将成为瓶颈。这在很大程度上取决于数据库结构。这就像是在上数学课。2+2=4,不太可能,因为相等的意思是什么。我不知道这会被调用多少次,但如果调用频率很高,那么就不应该由sql来处理。然而,如果你打算这样做的话,你贴出来的绒毛是最好的方法。
INSERT INTO table2 (name, num)
SELECT 'name', num
FROM table1
WHERE user='user'