「fk_building」が null の場合、これら 2 つのクエリは機能しないことに気付きました。理由がわかりません。ググるのが難しいため、適切な説明が見つからないようです。!=3 が 3 以外のすべてを返さない理由を誰か説明できますか? null行を含む?<=> を使用する必要があるのはなぜですか?
update floor set fk_building = 3 where fk_building != 3 and floor_id = 1;
また
select * from floor where fk_building != 3
fk_building が null の場合は機能しません。