樱桃沟夹事

Timo's life

2010年是一个不算很好的年份,从一个忙碌的SNS单位到年中的时候跳到了一个毫无目标的门户单位。之间的落差是显而易见的。
2010年好多时间也没有办成,英文也没学好,婚也还没求,房子也没买,可年龄还是长了一岁。 2010年居然买了很多书。可看完的也就10多本,很多还没完全看完。
《人生十论》应该是今年要看完的最后一本书了,钱穆先生的小时候真是幸福,而他读书也居然有2个顿悟提高的过程。人生三路向对于我这样的实在是太深刻了,对于西方人,中国人,印度人对于人生的三种不同态度。突然想到虽然印度还被殖民地过,但是他们的那种人生态度似乎一直没有改变,而我们似乎也越来越象西方人看齐了。那就是对于外部物质的目标的争取而不是对于内心的自省。
今年对于技术上似乎没有任何长进,也许以后多点分析问题的方法算是一个进步吧。dstat, strace也算是用的较熟练了,可惜这些东西在现在这个地方根本没有用处,对于系统运维来说这些都是多余的。
明年是往mysql还是linux至今也没个定论,我这人的毛病就是贪多,干什么没个定性。经常妄想一口吃成一个胖子。但是如果没有兴趣的事情往往不会坚持下去。钱穆先生小时候就知道看什么书都要彻底的看完。但是其实书不光要彻底的看完,好书得看5遍6遍7遍。
在茫茫银河系中,人类的存在实在是太渺小了,在漫长的人类进化过程中,我们现在只是沧海一粟,在茫茫的人海中,你只是一个不起眼的其中一个。每想到这里,我就觉得很宽慰,没人可以改变整个实际,无论是奥巴马还是霍金以及卡尔萨根都无法改变。所以与其这样,我们还是向着自己的兴趣方向活着吧。
前天参见了海淀堂的圣诞节活动,虽然我不同意神父的一些言论,但是这个世界就是多种多样的。所以我还是很赞同《理想国和哲人王》里的说法。
###########################################
Best regards
Timo Seven

今日写个小程序,需要用到在mysql中group by 之后排序,但是出现几个问题。数据如下:

但是如果你用group by order by xxx desc发现结果并不是这样的。其实这样只是对group by之后的结果再进行的order by。而mysql还不支持先order by再进行group by

发现group by的结果是根据id进行升序排列的。但是我实际上是需要反序进行排列。

有2个方法我自己找的,一个是通过alter table来解决,另外一个是子查询。 alter table的结果是以后只能进行降序排列了,但是好处是还是可以用到原来的索引,而用子查询基本是全扫描.

阅读全文 »

javascript要选择ID还是比较麻烦的。但是最近知道jquery的如此强大,《锋利的jquery》一书算是帮我总结了吧。其实也就是对于jquery的doc一个中文翻译。

但是为了方便以后自己学习,还是摘抄在这里吧。

总结一下 #xxx 表示选择 id=”xxx”的元素
.xxx表示选择class=”xxx”元素
xxx 表示所有的 xxx 标签元素

1. 基本选择器
$(“#test”) 选取id=”test”的元素
$(“.test”) 选取class=”test”的元素
$(“p”) 选取所有

元素
$(“*”) 选取所有的元素
$(“div,span,p.myClass”) 选取所有

,和拥有class=”myClass”的

标签的一组元素

2. 层次选择器
$(“div span”) 选取

里的所有的元素
$(“div > span”) 选取
元素下元素名是的子元素
$(‘.one + div’) 选取class=”one”的下一个
的兄弟元素
$(‘#two~div’) 选取id=”two”的元素后面的所有
兄弟元素

3. 基本过滤选择器
$(“div:first”) 选取所有

元素中第一个
元素
$(“div:last”) 选取所有
元素中最后一个
元素
$(“input:not(.myClass)”) 选取所有class不等于myClass的元素
$(“input:even”) 选取索引是偶数的元素

$(“input:odd”) 选取索引是奇数的元素
$(“input:eq(1)”) 选取索引等于1的元素
$(“input:gt(1)”) 选取索引大于1的元素,但是不包括1
$(“input:lt(1)”) 选取索引小于1的元素,但是不包括1

$(“:header”) 选取网页中所有的

,

,

…..
$(“div:animated”) 选取正在执行动画的
元素

4. 内容过滤选择器
$(“div:contain(‘我’)”) 选取含有文本”我”的

元素

$(“div:empty”) 选取不包含子元素(包括文本元素)的

空元素
$(“div:has(p)”) 选取含有

元素的

元素
$(“div:parent”) 选取拥有子元素(包括文本元素)的
元素

5. 可见性过滤选择器
$(“:hidden”) 选取所有不可见的元素。包括,

……

$(“div:visible”) 选取所有可见的

元素

6. 属性过滤选择器
$(“div[id]“) 选取拥有属性id的元素
$(“div”) 选取属性title=”test”的

元素
$(“div”) 选取属性title不等于”test”的
元素(注意:没有属性title的
元素也会被选取)

$(“div”) 选取属性title以”test”开始的

元素
$(“div”) 选取属性title以”test”结束的
元素
$(“div”) 选取属性title含有”test”的
元素

$(“div[id]“) 选取拥有属性id,并且属性title以”test”结束的

元素

7. 子元素过滤选择器
$(“:nth-child(index/even/odd/equation)”) 为每一个父元素匹配子元素,并且:nth-child(index)的index是从1开始的
$(“ul li:first-child”) 选取每个

    中第一个
  • 元素

    $(“ul li:last-child”) 选取每个

      中最后一个
    • 元素
      $(“ul li:only-child”) 在
        中选取是唯一子元素的
      • 元素

        8. 表单对象属性过滤选择器
        $(“#form1:enabled”) 选取id为”form1”的表单内的所有可用元素

        $(“#form2:disabled”) 选取id为”form2”的表单内所有不可用的元素
        $(“input:checked”) 选取所有被选中的元素
        $(“select:selected”) 选取所有被选中的选项元素

        9. 表单对象属性过滤示例
        $(“:input”) 选取所有,