• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL2008 クエリ文について)

SQL2008クエリ文のテーブル更新方法

このQ&Aのポイント
  • SQL2008のクエリ文を使用して、テーブルの特定の行を更新する方法について説明します。
  • テーブルA内の会員NoごとにSEQ1の行のPointとPoint2を修正する方法を解説します。
  • SEQ1の行のPointとPoint2を条件に基づいて更新するSQL2008のクエリ文のサンプルを提供します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

UPDATE テーブルA SET Point2=Point WHERE SEQ=1 AND Point!=99 UPDATE テーブルA SET Point=ROUND(Point2,0) WHERE SEQ=1 AND Point=99 AND Point2!=99.0 の2個のSQLで出来ます。

zenigata711
質問者

お礼

完璧でした!ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • SQL2008 クエリ文について

    いつも皆様に助けていただいてます。 過去に色々聞いているものの、なかなか応用が利かず・・・今回もご支援下さい。 SQL2008に、1つのDBを作っていて、その中にテーブルAとテーブルBがあります。 テーブルAには、1つの会員Noにつき3つのSEQ1~3の行があって、それぞれにポイント数が入ってます。 テーブルA 会員No  SEQ   Point 1001     1     20 1001     2     30 1001     3     50 1002     1     15 1002     2     10 1002     3      0  テーブルBには、1つの会員につき最大10個のSEQが付きますが、今は殆どカラッポです。 テーブルB 会員No  SEQ  Rank 1001    1    5 1002    1    5 やりたいことは、テーブルAのSEQ1のポイント数が99以外なら、テーブルBに テーブルAの「会員NO」、SEQ「7」、Rank「1」 の行を挿入したいです。 クエリ実行後のテーブルB 会員No  SEQ  Rank 1001    1    5 1001    7    1 1002    1    5 1002    7    1 テーブルAのSEQ1のPointが99以外なら、テーブルBに「会員No」とSEQ「7」 とRank「1」を挿入、という概要です。 クエリで可能でしょうか? 先ずは自力である程度やってみるのが筋なんでしょうが、時間が無いので聞いてしまいます。 何卒よろしくお願いします。

  • SQL2005 のクエリ文について

    いつもありがとう御座います(ご回答いただいた皆様)。 ちょっと悩んでおりますので何かヒントを頂けたら・・・よろしくお願いします。 テーブルAに「会員No」と「来店ポイント」、という列があったとします。 テーブルBにも「会員No」と「来店ポイント」があったとします。 AB両方の会員Noは=です。 テーブルAの「来店ポイント」が間違っているので、テーブルBの「来店ポイント」と 差し替えたいのですが、どの様なクエリになるのでしょうか? 自力で何とかなるかな、、と思い2時間ほど粘りましたが、上手くいかないので・・・ (中堅外食チェーンの板前をしてますが、何故かサーバ管理者までしてます。 若いというだけで・・・そんな環境なので聞ける人も居らず、いつもここが頼りになってます。 すみません) 何卒、よろしくお願いします。

  • SQL2008 クエリ文について

    いつもお世話になっております。 一応30分ほど自力で考えましたが、断念しました。 どなたかご教授下さい。 テーブルAの中に、以下の様なデータがあるわけですが、 KAINo SEQ  0001    1 0001    2 0001    3 0001    5 0002 1 0002 5 1つのKAINoに対して、存在するSEQがバラバラなので、全てのKAINoにSEQ1~7を 作るクエリを流したいのです。 (↑をこんな感じに↓) KAINo SEQ  0001 1 0001 2 0001 3 0001 4 0001 5 0001 6 0001 7 0002 1 (略)  0002 7 どの様なクエリになるのでしょうか? そもそもクエリで可能なのでしょうか? どうぞ、よろしくお願い申し上げます。

  • SQL2008のUPDATE分について

    いつもお助け頂いております。 簡単な方には簡単な内容なのでしょうが、行き詰まりました。 お助け下さい。 現在、「テーブルA」の中に、「会員NO」という列があります。 現在は、「00001001」といった8桁の数値と、「000000001010」といった12桁の数値 が混在しております。 これを12桁に統一したいのですが、なかなか検索してもHITせず・・・ ほとんどが8桁なので、先頭に「0000」を追加して12桁の分は手作業で修正すればいいか、 と思い社内のSQL2005でテストOKだったクエリが、現地のSQL2008ではエラーに。。 ちなみに下記の内容です。 UPDATE テーブルA SET 会員NO = '0000' + 会員NO できれば12桁に統一、というクエリが欲しいのですが・・よろしくお願いします。

  • エクセルの関数。お願いします!

    任意の桁数で四捨五入するROUND関数についてお願いします。 A1「5678.492」の数値。 (ア)小数点以下を四捨五入しなさい。 (イ)1の位を四捨五入しなさい。 =ROUND(A1,○)の○には何が入るんでしょうか?

  • SQLのUPDATE文について

    SQL勉強中です。下記の様なデータを書き換えたいのですが、どの様なSQL文になるのでしょうか? ご教授下さいませ。 1つのテーブルに「会員NO」と「会員種別」という列がありまして、 会員氏名   会員No   会員種別 ・・・ --------------------------------- 田中一郎 1-0001 0001    ・・・ 鈴木二郎 2-0003 0001    ・・・ 会員Noの左端の数値が1なら会員種別を0001、2なら0002といった 形に振り分けたいのですが、どの様なSQL文になるのでしょうか? 自力ではなんとも上手くいきませんでした。 どうか、お助け下さいませ。

  • テクニカル文の英訳

    翻訳を頼まれましたが、次の2文章が分かりません。 どなたか英訳していただけませんでしょうか。特に『1の位』 と『1000の位まで』が分かりません。 1.その数値を1の位までの2桁の数字(小数点以下は四捨五入)で記入する。 2.その数値を1000の位までの3桁の数値で記入する よろしくお願いします。

  • エクセル関数?教えてください。これはどうすればできますか?未熟者です

    A列÷B列の答えの数値を削除と四捨五入し、プラス表示とマイナス表示をしたい。 答えは2パターンになります。 (1)A列÷B列の答え1.091763・・・などとなります。それを小数点一位以上(1.9)を削除し小数点五位(6)を四捨五入して数値で表したいのです。 そして出た答え、小数点以上が(1.)の場合プラス表示とし918で完成させたい。 (2)A列÷B列の答え0.991763・・・などとなります。それを小数点一位以上(0.9)を削除し小数点五位(6)を四捨五入して数値で表したいのです。 そして出た答え、小数点以下(0.)の場合はマイナス表示としと-918で完成です。 うまく説明できませんが、よろしくお願いします。

  • エクセルで数値の桁数を一定の法則で統一したい

    E列にA~D列のデータから計算された数値が並んでいます。 たとえば E1:9.9 E2:86.08695652 E3:212.8571429 E4:1158.13953488372 これらを E1:9.90 (整数1桁の場合は四捨五入して小数2桁まで)       1未満の数値も小数2桁で(例、0.96) E2:86.1 (整数2桁の場合は四捨五入して小数1桁まで) E3:213  (整数3桁の場合は四捨五入して小数カット) E4:1158 (整数4桁の場合は四捨五入して小数カット) 上記の法則で見やすく整理したいのです。 整数4桁が最大です。大量のデータをまとめて整理出来る方法は ないでしょうか?よろしくお願いします。

  • 小数点以下「3桁で」四捨五入?「3桁を」四捨五入?

    小数点第3位を四捨五入して、小数点第2位までの数値にすることを、 「小数点以下3桁で四捨五入する」というのは正しい日本語ですか? 「小数点以下3桁を四捨五入する」の方が正しいですか? それとも他にもっと適切な言い方はありますか? 国語に自信のある方、回答お願いします!