Mysql SQL查询似乎不会影响相同的行数,而是添加了一个count语句
我提出了一个类似这样的问题 查询1。 下面是一个普通的 查询2。 第一个查询返回(通过执行影响)48行,第二个查询返回103行。可能的原因是什么 我还将向您展示我的sql,以防您想自己运行 子问题-对于这一问题,一个新问题的开始毫无意义,因为它也与行数影响有关Mysql SQL查询似乎不会影响相同的行数,而是添加了一个count语句,mysql,sql,phpmyadmin,Mysql,Sql,Phpmyadmin,我提出了一个类似这样的问题 查询1。 下面是一个普通的 查询2。 第一个查询返回(通过执行影响)48行,第二个查询返回103行。可能的原因是什么 我还将向您展示我的sql,以防您想自己运行 子问题-对于这一问题,一个新问题的开始毫无意义,因为它也与行数影响有关 除此之外,我还想知道如何进入第一个查询count(*)以获得受影响的行-必须在sql中完成,我无法使用php代码来实现这一点,可能最好使用限制1进行计数。使用额外的内部连接行可能会被消除。您是否尝试将内部联接添加到“Select*FROM
除此之外,我还想知道如何进入第一个查询count(*)以获得受影响的行-必须在sql中完成,我无法使用php代码来实现这一点,可能最好使用限制1进行计数。使用额外的内部连接行可能会被消除。您是否尝试将内部联接添加到“Select*FROM zlec;”中 使用
内部联接
,如果您的其他表之一koord
,zlec\u-adresy
,piorytet
和zlec\u-status
中缺少与zlec
中的记录对应的记录,则zlec
中的记录将不在结果集中。如果要显示zlec
中的每条记录,必须使用LEFT JOIN
。退房:
这是一个很好的解释。它们有很大的不同,第一个要求满足所有的连接条件-由于计数不同,它们不适用于
zlec
中的所有行。逐个添加联接,直到行计数不同。内部联接将过滤掉记录。如果您不希望出现这种行为,请使用左连接。是的,左连接确实有效,但没想到会这么容易:)
SELECT zlec_status.nazwa AS Status,
piorytet.nazwa AS Priorytet,
Concat(koord.imie, ' ', koord.nazwisko) AS `Koordynator`,
Concat(zlec_adresy.miasto, ' - ', zlec_adresy.ulica, ' ',
zlec_adresy.oddzial)
AS `adres`,
zlec_z_dnia,zlec_id,
zlec_nr,
zlec_do,
zlec_ogran,
awizacje,
awizacja_na_dzien,
termin_zamkniecia,
tresc,
uwagi
FROM zlec
INNER JOIN koord
ON zlec.koord = koord.id
INNER JOIN zlec_adresy
ON zlec.zlec_addres = zlec_adresy.id
INNER JOIN piorytet
ON zlec.priorytet = piorytet.id
INNER JOIN zlec_status
ON zlec.status_zlecenia = zlec_status.id
SELECT * FROM zlec;