4
因此,當前我們正在執行SQL @ our School和 我在更改選擇參數時想知道可疑結果集。更改「select」語句時SQL結果會有所不同
所以,當我試試這個:
select p1.vorname, p1.Geburtstag, p2.vorname, p2.Geburtstag
from patienten as p1
inner join patienten as p2
on p1.Geburtstag = p2.Geburtstag AND p1.Nr != p2.Nr
order by p1.Geburtstag asc
然後我得到44個結果。但是,當我試試這個:
select p1.vorname, p1.Geburtstag
from patienten as p1
inner join patienten as p2
on p1.Geburtstag = p2.Geburtstag AND p1.Nr != p2.Nr
order by p1.Geburtstag asc
我得到1084分的結果,它代表所有的患者...
我不知道爲什麼,導致我所做的就是改變select語句...
我使用XAMPP:
Server: 127.0.0.1 via TCP/IP
Server-Typ: MariaDB
Server-Version: 10.1.8-MariaDB-log - mariadb.org binary distribution
Protokoll-Version: 10
Benutzer: [email protected]
Server-Zeichensatz: UTF-8 Unicode (utf8)
而不是說你所做的一切是改變select語句它會更準確,而且要說你所做的只是改變選定字段的列表。另外,你應該避免使用不同的縮進,以便更容易地看到其餘的東西是相同的。 –
所以:我不相信改變所選字段的列表會產生不同的結果。你能證明這個嗎?請提供[MCVE]。這將意味着'CREATE TABLE'語句和'INSERT INTO'語句用示例數據填充表,以便執行上述兩個查詢可以得到您聲稱它們產生的結果。 –
這裏一定有其他事情發生。查詢返回的行數只與使用'SELECT DISTINCT'時選擇的列有關。在查詢中情況並非如此,所以返回的行數必須保持不變。 –