• ベストアンサー

DBから新しいものを30個取得する場合

最近DBの勉強を始めた初心者です。 DBから新しいもの順に30個のデーターを取り出して表示するにはどのように記述したらいいでしょうか? SELECTの後やFROMの後にいろいろ加えてみたりはしたのですが、わからなくなってしまったので。 環境: access+coldfusionの組み合わせなのです。

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

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

select top 30 * from table_name order by field_name

armstrong-us
質問者

補足

ありがとございます。出来ました。 多分ちょっとしたことで出来るとは思ったのですが、探していてもなかなか見つからなくて、助かりました。 この程度のことは一般的なSQLを学んだ人ならすぐにわかる程度のものなんでしょうか? それとDBもいろいろと種類がありますが、どれを学んだらいいと思われますか?(MySQLが一番わかりやすいと聞きますが) また、DBを学ぶ上で参考になるサイト等ありましたらご教授いただけると幸いです。

その他の回答 (1)

回答No.2

>この程度のことは一般的なSQLを学んだ人ならすぐにわかる程度のものなんでしょうか? 「top n」というのは、マイクロソフトのDBMSの特別な機能です。 SQLの標準化された仕様としては、「offset m limit n」という指定があります。 多くのDBMSでは、SQL標準仕様の中でサポートしていない部分がある一方で、DBMS独自の機能をサポートしています。 自分が使用するDBMSで、「特定の機能が実装されているかどうか」、「どのような形で実装されているか」は、マニュアル等で確認する必要があります。

armstrong-us
質問者

お礼

ありがとうございます、参考になりました。 少しずつ学んでいこうと思います。

関連するQ&A

  • .netでのDB連携

    ASP.netのVB.NETを勉強していて簡単なシステムを作成しています。 簡単な帳票にデータを登録したり編集、削除したりするものです。 DB接続はできたのですが、DBからデータを呼び出す表示、イベントによるDBにデータを登録、そしてDBのデータを編集、削除する方法がみえてきません。 SQLのクエリを使用して行うのでしょうか? SELECT 呼び出す列 FROMテーブル  これだけではよびだせませんでした。 すいませんが、知恵をかしてください。 DB接続を行った後、

  • 大変困っております。PHP DBにお詳しい方宜しく御願致します。

    初歩的なことかもしれません。 御助言頂きたいと思いご質問させて頂きます。 ポイントサイトを構築している途中で会員さんのポイント獲得ランキングを昇降順にDBより抽出しようと試みましたが無理でした。 こちらのソースからの後の記述が分かりません。 SELECT * FROM $k_user_table order by point DESC 結局分からぬまま最終的に以下の様にすることが精一杯でした。 ---------------------- <?php $point_count = $DB->getone("SELECT * FROM $k_user_table order by point DESC"); print $point_count; ?> ---------------------- この形でもやはり1件の獲得ポイントのみが出たり或いは一桁のちょっと訳が分からない数字が出たりします。 ポイントの高い順に10位まで表示したいと思っております。 テーブル名はこちらSELECT * FROM $k_user_table order by point DESCで間違いないはずなんですけどDBへの接続等その後のWHERE・=・<・>・等の記述方法の(~の場合~にする)の様な定義付けが分かりません。 先輩方の御助言頂けますでしょうか。 宜しく御願致します。

    • ベストアンサー
    • PHP
  • LIKE検索の場合うまくいきません

    WEBアプリとSQLServerでSELECTをするときに不正をされないように SELECT * FROM DB WHERE DB.A = 検索文字 を SELECT * FROM DB WHERE DB.A= @A のようにして、@Aを後で指定しますが、 SELECT * FROM DB WHERE LIKE '%検索文字' のようにLIKE検索の場合うまくいきません。 どのように記述したらいいのでしょうか? SELECT * FROM DB WHERE DB.A LIKE @A --> 駄目 SELECT * FROM DB WHERE DB.A LIKE '%@A' --> 駄目

  • PEAR DBでの行取得について

    PEAR::DBにてテーブルの内容は現在下記のようにしておりますが 明示的に例えば2行目のデータを取得したい場合はどのようにすれば良いでしょうか。 $res =& $db->query('select * from shouhin'); while ($row =& $res->fetchRow()) { }

    • ベストアンサー
    • PHP
  • ExcelVBAからADOで複数のDBへの接続

    いつもお世話になっています。 ExcelVBAの初心者ですが、Oracle、Access、ExcelデータへADO接続してデータを表示するものをExcelかACCESSで作ろうとしています。 それぞれのデータは社内ネットワークのバラバラ位置にあるのですが、 ADOとは下記のイメージでいいでしょうか? 1.インポートする手間がない。 2.それぞれのDBが更新されたら、その前までのデータで表示される 3.3つのDBを同時に接続しても問題はない・・・ まだイメージが固まっていないのですが、上3つが気になっています。 また自宅でネットワーク環境になくても練習できるものでしょうか?

  • UNION ALLのように順番がありNULLを返す方法

    SQL初心者です。ACCESSデータベースに対するクエリを書いているのですが、 条件を配列として、その配列の順番に応じたSELECT文を書きたいのです。 SELECT * FROM access_db WHERE ID = '条件' UNION ALL SELECT * FROM access_db WHERE ID = '条件' UNION ALL SELECT * FROM access_db WHERE ID = '条件' UNION ALL... といった具合にSQL文を作成しているのですが、これでは見つからない条件がある場合に、行が繰り上がり条件を格納した配列とはずれが生じてしまいます。 見つからなかった場合にNULLまたはそれを表せる何かを抽出結果として組み込むことはできますか? SQL初心者のためUNION ALL程度しか近いものが見つけられなく、困っています。 どなたかよろしくお願いします。

  • DBから取得した結果をtext内へ表示したいのですが。

    getuji表に列が「月、日、天気」と3つある場合に String qry1 = "SELECT * FROM getuji WHERE 月 = '4'"; ResultSet rs = st.executeQuery ( qry1 ); とgetuji表の月が4の行から「月、日、天気」データを取り出し、「text1に月、text2に日、text3に曜日」と取得したデータを表示させたいのですが、 DBから取得したデータをどうしたらテキスト内へ表示させることができるのかわかりません。 どなたかわかる方がいらっしゃいましたら教えていただけないでしょうか?

    • ベストアンサー
    • Java
  • オラクルDBからのデータ取得について

    こんばんわ。 オラクル(sqlplus)についての質問2点です。 (1)シェルからオラクルDBへアクセスし、データを取得したいのですが、  select時に、結果のヘッダーをつけずに結果(データ)のみをファイル出力することは可能でしょうか? (DB2で言うところの「-x」オプションのような・・・) (2)エラー時にSQLコードを取得したいのですが、SQLコードをファイル出力することは可能でしょうか? オラクルは初心者で、行き詰まってしまいました・・・ どうかよろしくお願いします。

  • SQLで'ABC'をDBの'AB'にHIT

    sqlite3をVC++2013で扱っています。 もしかしたら、単純な方法があるのかもしれないので質問させてください。 DBに渡す文字が'ABC'でDB内のデータ'AB'にHITさせたいと思っています。 現状思いつく方法は select * from テーブル where キー like 'A%'; select * from テーブル where キー like 'AB%'; select * from テーブル where キー like 'ABC%'; と渡す文字を一文字ずつ増やして検索して row数が0以上の一番小さい数のデータを取得するという方法しか思いつかないのですが。 何か良い方法はありますでしょうか?

  • mysqlのメモリの開放、DB切断について

    php,mysqlの勉強をしている初心者です。 mysqlのメモリの開放、DBの切断はselect処理をした時だけでよいのでしょうか? 以下の場合がよくわかりません。 -------------------------------------------------------------------------- (1)select処理を行う (2)(1)で行ったselect処理の値を使いinsert処理を行う (3)(2)の後にmysqlのメモリの開放、DBの切断をしようとするとエラーになってしまいます。 -------------------------------------------------------------------------- どなたかお分かりの方がいましたら教えてください。 よろしくお願いします。