select (bin(~'101010101010101')) as Result;
Result is : '1111111111111111101001000010000111000000110011111000000101001010'
這是真的嗎?如何在MySQL語句中使用二進制/位域文字
我希望看到這樣的結果:
'1111111111111111111111111111111111111111111111111010101010101010'
請幫助我。
select (bin(~'101010101010101')) as Result;
Result is : '1111111111111111101001000010000111000000110011111000000101001010'
這是真的嗎?如何在MySQL語句中使用二進制/位域文字
我希望看到這樣的結果:
'1111111111111111111111111111111111111111111111111010101010101010'
請幫助我。
您正在將一個字符串傳遞給按位操作。 These operations是爲MySQL中的BIGINT整數定義的,因此您可能會收到意外的結果。
你應該嘗試:
SELECT bin(~0x5555) as Result
或:
SELECT bin(~b'101010101010101') as Result
結果:
'1111111111111111111111111111111111111111111111111010101010101010'
看起來像101010101010101被解釋爲十進制數。它的二進制表示是10110111101111000111111001100000111111010110101。補充這一點,你會得到打印結果。
什麼語言是什麼? C/C++?阿達?帕斯卡爾? BASIC? FORTRAN? Common Lisp? LOLcode? – 2012-07-07 07:46:50
一些SQL方言?如果是這樣,什麼數據庫? – Thilo 2012-07-07 07:47:23
是的,這是MySql。 – Ebrahim 2012-07-07 07:49:39