![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 520 Pomógł: 102 Dołączył: 15.07.2014 Skąd: NULL Ostrzeżenie: (0%) ![]() ![]() |
Zadłem na so* pytanie czy można grupować operację na 1 kolumnie w MySQL:
http://stackoverflow.com/questions/3592978...s-in-one-column Odpowiedź była że można:
Problem: Zauważyłem że kolejność tych operacji daję różne wyniki: https://eval.in/622933
Tu akurat w PHP ale w MySQL to samo... Dodam że ta druga opcja zdaję się być poprawniejsza co do wyniku. Może ktoś wytłumaczyć skąd ta różnica? Ps. Na bitach się nie znam dlatego też zadałem pytanie co do grupowania. -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Z tego samego powodu co 3*1+2 != 3*2+1.
-------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 520 Pomógł: 102 Dołączył: 15.07.2014 Skąd: NULL Ostrzeżenie: (0%) ![]() ![]() |
Ok już trochę jaśniej, czyli ta druga opcja poprawna?
Wczoraj już szukałem coś o kolejności tych operatorów ale nie mogłem znaleźć. -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Obydwie są poprawne.
Tak jak działania na liczbach dziesiętnych, które podałem. Wyjątkiem kiedy kolejność operacji bitowych nie ma znaczenia są tylko operacje AND, tylko OR, lub tylko NOT. Np. 1 | 2 | 6 będzie tożsame z 1 | 6 | 2. -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 02:12 |