ã¡ã¢ ActiveRecordãçæããSQLã¯é常ã/log/development.logãªã©ã®ãã°ãã¡ã¤ã«ã«åããããããããRailsã®ã³ã³ã½ã¼ã«ã«åºåããæ¹æ³ã å®ã¯ã¨ã¦ãç°¡åã§ãã°ã®åãåºãå ãæ¨æºåºåã«æå®ããã ãã ruby script/console # ãã°ã®åºåå ãæå®ããã以ä¸ã ActiveRecord::Base.logger = Logger.new(STDOUT) # ActiveRecordãæä½ããã¨ä»¥ä¸ã®ããã«SQLã®ãã°ãåºåãããã User.find(:first) [4;36;1mSQL (0.0ms)[0m [0;1mSET NAMES 'utf8'[0m [4;35;1mSQL (0.0ms)[0m [0mSET SQL_AUTO_IS_NULL=0[0m [4;36;1mUser Load (0.0ms)[0m [0;1mSELECT
<< 2007/07/ 1 1. [æä¼] 第ä¸å®æ¯æ¥ 2 1. ï¼ã¡ãããã宿³ä¸ç¶ ãããã«ã®ã¼äººããè¦ãæ¥æ¬ 2. Programming for the masses 3. ã¨ããããæã ã£ããä½ã¨ãªãå§ããããã° - flymake ã§ãªã¢ã«ã¿ã¤ã ææ³ãã§ã㯠4. cdiggins.com >> My Goal: Naive Programming 3 1. mixiãèªç¤¾éçºã®æ¤ç´¢ã¨ã³ã¸ã³ã«ç§»è¡ãã¦ã§ãæ¤ç´¢ã¯YSTã«:ãã¥ã¼ã¹ - CNET Japan 2. [Ruby] CodeZineï¼Javaéçºè ã®ããã®Rubyã¬ã¤ãï¼Word, è¨èªæ¯è¼ï¼ 3. æå·ã«ç§»åã 4. [Ruby] ä¸çã«åºãããªãã¸ã§ã¯ãæåã¹ã¯ãªããè¨èªãRubyã«ã¤ãã¦éçºè ãèªã 4 1. æå±±åç©å 2. ã¤ã³ã¿ãã¥ã¼ 3. [Ruby] Rhino on Rails 4. [è¨èª] ITm
忏ããæ¸ãããã®ã¡ã¢ãçºè¦ããã®ã§å çãã¦è¼ãã¦ã¿ã¾ããã¡ãªã¿ã«ãã®è©±ã¯Mysql(InnoDB)å©ç¨æéå®ã§ãã ã¢ãã«ã®countã¡ã½ãã㯠SELECT count(*) AS count_all FROM `blogs` ã®ãããªSQLæãçºè¡ãã¾ãããã®ãããªSQLæã§ã¯ãåºæ¬çã«ä¸»ãã¼ã¤ã³ããã¯ã¹ã«ããå ¨ç´¢å¼æ¤ç´¢ãè¡ããã¾ããé常ãã¤ã³ããã¯ã¹ã ããèªã¿è¾¼ãå ¨ç´¢å¼æ¤ç´¢ã®ã»ããããã¼ãã«ã ããèªã¿è¾¼ãå ¨è¡¨æ¤ç´¢ãããI/Oåæ°ãå°ãªããªãããé«éã«ãªãã¾ãããInnoDBã®ä¸»ãã¼ã¤ã³ããã¯ã¹ã¯ä»ã®åå¤ã¨ç´çµãã¦ãã仿§ã§(ãã®å ´åã¯)ä½è¨ãªåå¤ãèªã¿è¾¼ããã¨ã«ãªãããããã¾ãé«éã«ãªãã¾ããã主ãã¼ä»¥å¤ã®ã¤ã³ããã¯ã¹ãå©ç¨ããæ¹ãé«éã«ãªãããã§ãã å®éã«è©¦ãã¦ã¿ã rails2.3.2(ãã¶ã), mysql5.0.77ã§è©¦ãã¾ããã é©å½ãªrailsããã¸ã§ã¯ãã使ããs
èªãã§ããã³ã¼ãã§é¢ç½ããã¯ããã¯ã使ã£ã¦ããã®ã§ã¡ã¢ã Rails ã®ActiveRecord ã®find ç³»ã¡ã½ããã¯åªç§ã ã¨æããã©ãèªåã§SQL ãæ¸ãããæãããã¨æãã¾ããããã§ãfind_by_sql ã使ãããã§ããããã®éãå¤§è¦æ¨¡ãªSQL ãæ¸ãå ´åã®Tips ã§ãã ç°å¢ ruby 1.8.7 rails 2.2.2 ãã©ã¡ã¼ã¿ã«ãã£ã¦SQL èªä½ãå¤ãããå ´å ä¾ãã°ãSQL ã以ä¸ã ã£ãã¨ãã¾ãã RDBMS ã¯SQLite3 SELECT * from users where name = xxx; ãããæ±ããfind_by_sql ã以ä¸ã®ãããªæãã User.find_by_sql(["select * from users where name = :name", {:name => 'bob'}]) #=> [#<User id: 1, name: "
JOINã¯è¤æ°ã®ãã¼ãã«ãé£çµãããããã«ç¨æããããã¼ã¯ã¼ãã§ããåç´ã«ãã¼ãã«ãé£çµããã以å¤ã«ããLEFT JOIN ONãUSINGãªã©ã®ä¾¿å©ãªãã¼ã¯ã¼ããããã®ã§ããããã試ãã¦ã¿ã¾ãããã ãªã¬ã¼ã·ã§ã³ã«ããé¢ä¿ä»ã ãã¼ãã«ã®ä½æã¨ãã¼ã¿ã®æ¿å ¥ ããã§ã¯ãè³¼å ¥å±¥æ´ãã¼ãã«ï¼ãã¼ãã«å=purchaseï¼ãååãã¼ãã«ï¼ãã¼ãã«å=goodsï¼ã顧客ãã¼ãã«ï¼ãã¼ãã«å=customerï¼ã使ããããã使ã£ã¦èª¬æãã¦ããã¾ããCREATE TABLEã¨INSERTã使ã£ã¦ããã¼ãã«ã®ä½æã¨ãã¼ã¿ã®æ¿å ¥ããã¦ããã¾ãããã ãã¼ãã«ã使ããéã®æé ã¯ãCREATE TABLEã«ç¶ãã使ãããã¼ãã«åãæå®ãã¾ããæ¬¡ã«ãã«ãã³å ã«ãã£ã¼ã«ãã®å®ç¾©ãåæãã¦ããã¾ãããã£ã¼ã«ãã®å®ç¾©ã¯ãã£ã¼ã«ãåã¨ãã¼ã¿åãããã«å¶ç´ãªã©ãå¿ è¦ãªã ã宣è¨ãã¾ãã CREATE TABLEæ§æ
ã©ã³ãã³ã°
ãç¥ãã
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}