すべての奇数のID値を見つけるために次のコマンドを使用する必要があったクエリを今日作業していました。偶数または奇数ID値の検索
(ID % 2) <> 0
誰でもこのことを教えていただけますか?それはうまくいったが、なぜか知りたい。
すべての奇数のID値を見つけるために次のコマンドを使用する必要があったクエリを今日作業していました。偶数または奇数ID値の検索
(ID % 2) <> 0
誰でもこのことを教えていただけますか?それはうまくいったが、なぜか知りたい。
ID % 2
IDを2で割った場合の残量を確認しています。偶数を2で割った場合、常に0の剰余があります。他の数字(奇数)はゼロ以外の値になります。それは何をチェックしているのですか?
となります。これはまさに私が必要としていたものです。ありがとう! – Phoenix
は、すべての整数(通貨と数値も許可されます)を効果的に0と1に減らします。
about the modulo operator in the manualをお読みください。
IDを2で割って余りがゼロでないことを確認しています。つまり、それは奇妙なIDです。
我々はオラクルでは
select num from table where (num % 2) = 0
を使用する必要があります偶数を見つけるための、
select num from table where MOD (num, 2) = 0;
配当%除数
配当は分割する数値式です。 DividendはSQL Serverの整数データ型の式でなければなりません。
Divisorは被除数を分ける数値式です。除数は、SQL Server以外の整数データ型の式でなければなりません。 = 15
除数= 2
SELECT 15 % 2
Output
1
配当は、あなたが
クエリだけでもID番号のSTATIONからCITY名のリストを照会したいとしましょう。 STATIONため
スキーマ構造:
ID Number
CITY varchar
STATE varchar
select CITY from STATION as st where st.id % 2 = 0
Will fetch the even set of records
In order to fetch the odd records with Id as odd number.
select CITY from STATION as st where st.id % 2 <> 0
%関数は、値が0または1
この質問は、単に追加のコード例ではなく、*説明*を探しています。あなたの答えは質問者のための洞察を提供せず、削除されるかもしれません。比較して奇数を選択する方法を説明してください。 –
<>が等しくないことを意味するか減少させます。しかし、SQLの一部のバージョンでは、あなたはドク以下のように!=
for even:
select * from tablename where columname/2 not like '%.%';
for eg:
select sal from emp where sal/2 not like '%.%';
for odd;
select * from tablename where columname/2 like '%.%';
select sal from emp where sal/2 like '%.%';
これは質問に答えるものではなく、たとえそれがあったとしても、コードの文脈や説明はありません。コードのみの回答は一般的に役に立たない。 – WillardSolutions
を書くことができます別の数値で割り算したときの余りを返します
配当%除数
を指定します。例 についてhttps://docs.microsoft.com/en-us/sql/t-sql/language-elements/modulo-transact-sql#syntax
13%1
次の部分に等しいていない示し<>
ある2リターン。これは、Oracleデータベースに仕事に行くされていないため、
そのためどのようなあなたの文の意味、それは2で割ったときにIDの 余りである0
に等しいではないが注意してください。同じ表現は以下のようになります。
MOD(ID, 2) <> 0
(ID%2)= 0偶数を選択すると – anandharshan