是否可以通过"order by"使用预定义的列值(ID)排序mysql,如:order by(ID = 1,5,4,3),所以我会得到记录1,5,4,3订购?
更新:关于滥用mysql ;-)我必须解释为什么我需要这个...
我希望我的记录每5分钟随机更改一次.我有一个cron任务来执行更新表以在其中放入不同的随机排序顺序.只有一个问题!分页.我将有一位访问者来到我的页面,我给他前20个结果.他将等待6分钟并转到第2页,因为排序顺序已经改变,他将得到错误的结果.
所以我想如果他来到我的网站,我把所有的ID都放到了一个会话中,当他在第2页时,即使排序已经改变,他也能获得正确的记录.
有没有其他方法,更好,这样做?
我有一个包含2列,日期和分数的表格.它最多有30个条目,过去30天每个条目一个.
date score
-----------------
1.8.2010 19
2.8.2010 21
4.8.2010 14
7.8.2010 10
10.8.2010 14
Run Code Online (Sandbox Code Playgroud)
我的问题是缺少一些日期 - 我想看到:
date score
-----------------
1.8.2010 19
2.8.2010 21
3.8.2010 0
4.8.2010 14
5.8.2010 0
6.8.2010 0
7.8.2010 10
...
Run Code Online (Sandbox Code Playgroud)
我需要从单个查询得到:19,21,9,14,0,0,10,0,0,14 ......这意味着缺少的日期用0填充.
我知道如何获取所有的值,并在服务器端语言迭代日期和错过空白.但这是否可以在mysql中进行,因此我按日期对结果进行排序并获取缺失的部分.
编辑:在此表中有另一列名为UserID,因此我有30.000个用户,其中一些在此表中有分数.如果日期<30天以前,我每天都会删除日期,因为我需要每个用户最近30天的分数.原因是我正在制作过去30天内用户活动的图表,并绘制图表我需要用逗号分隔的30个值.所以我可以在查询中告诉我USERID = 10203活动,查询会得到30分,过去30天每一分.我希望我现在更清楚了.
我在mysql表中有两列:a和b.a是allways字符串值,b有时是字符串值,有时它是null.
如何构造一个mysql SELECT,以便在它不为null时采用b,否则采用b.
我尝试用concat制作一些魔法,如果......然后没有成功......
更新 - 为了扩展我的问题,是否有一个函数可以像Ifnull一样工作但是可以用于null和空值?
有没有一个jquery插件可以让我有一个像矩形的小日历,就像在日期选择器中,一些日期将是不同的颜色.当我用鼠标查看日期时,会弹出一个弹出窗口,说明当天安排了什么事件.当然我会用事件填充事件数组;-)
我找到的只是日期采摘(小)或日历(全屏大).我的网页需要的是那里有一个小日历和一个简单的鼠标悬停,它会显示我希望它显示的文本.
这样的事情存在吗?
我正在创建一个同义词列表,我将它存储在数据库中并在进行全文搜索之前检索它.
当用户输入如下:word1
我需要在我的同义词表中查找这个单词.所以,如果找到这个单词,我会选择这个单词的所有同义词,并在下一个查询的全文搜索中使用它,我在那里构建查询
MATCH(columnname)AGAINST((word1a word1b word1c)在BOOLEAN MODE中)
那么如何将同义词存储在表中?我找到了两个选择:
使用键和单词列
val keyword
-------------
1 word1a
1 word1b
1 word1c
2 word2a
2 word2b
3 word3a
etc.
Run Code Online (Sandbox Code Playgroud)那么我可以在一个查询中找到输入单词的完全匹配并找到它的ID.在下一个选择中,我获得具有该ID的所有单词,并以某种方式使用服务器端语言中的记录集循环来连接它们.然后我可以在主表上构建我需要查找单词的真实搜索.
只使用单词列
word1a|word1b|word1c
word2a|word2b|word2c
word3a
Run Code Online (Sandbox Code Playgroud)现在我是SELECT语言,如果它在任何记录中,如果是,则提取所有记录并在|中将其爆炸 而且我再次说出我可以使用的话.
第二种方法看起来更易于维护这个同义词数据库的人,但我看到了两个问题:
a)如果字符串中有单词,我如何在mysql中找到?我不能像'word1a'那样,因为synonims可能非常相似,word1a可能是strowberry,strowberries可能是鸟类,而2a可能是浆果.显然我需要完全匹配,那么LIKE语句如何在字符串中完全匹配?
b)我看到一个速度问题,使用LIKE我想使用第一种方法,我完全匹配一个单词,使用比"="更多的mysql.另一方面,在第一个选项中,我需要2个语句,一个用于获取单词的ID,第二个用于获取具有此ID的所有单词.
你会如何解决这个问题,更多的是采取何种方式采取的两难选择?有没有第三种方式我没有看到管理员很容易添加/编辑同义词,同时快速和最佳?好的我知道通常没有最好的方法;-)
更新:使用两个表一个用于主词,第二个用于同义词的解决方案在我的情况下不起作用.因为我没有用户在搜索字段中输入的MASTER字样.他可以在字段中键入任何同义词,所以我仍然想知道如何设置这个表,因为我没有主要单词,我将在一个表中具有ID,并且在第二个表中与主单元的ID同步.没有主词.
我正在尝试使用Galleria插件进行图像处理.它工作正常,我可以通过参数将高度设置为0.66,高度将是宽度的66%,这是响应.
问题是,缩略图也包含在这个高度中,并且当在手机上观看时拇指不会变得更小,因此图像的高度逐渐变小,不再是66和更长.
我的问题是,如何使图像保持比例(没有考虑缩略图的高度)或(我想这更容易实现):如何旋转平板电脑或手机时动态设置高度比例(在浏览器调整大小是).使用小屏幕尺寸我想保持1:1的比例,因为拇指开始变得如此大于主图像),并且在480px宽度之后我希望比率为1:0.66.
在Galleria初始化并刷新拱廊尺寸后,有没有办法更改高度参数?我知道有一个refresh()参数,但我不确定如何动态更改高度比参数.
我使用的是经典的ASP和MySQL(使用PHP不会改变问题的重点).
我需要在我的主页上设置一个变量:
SET block_encryption_mode = 'aes-256-cbc'
Run Code Online (Sandbox Code Playgroud)
我无法将其设置为全局变量,因为其他用户正在使用服务器并且可能使用默认值block_encryption_mode.
我知道我可以在每个网页的开头使用ASP/PHP语句,但这似乎使用了太多的资源; 每个用户都会在每个页面上执行SET语句......
有没有办法在每个会话的开始时设置变量或执行其他一些SQL语句,就像像ASP这样的onstart事件,可能吗?或者,如果不在每个页面上为每个用户执行查询,我怎样才能实现目标?
我有一个div或任何其他元素.我需要在其中保留一些参数,如数字(记录的ID)或其他东西,我需要使用jquery使用ajax操作(更改它).
我可以使用div ID或类,但我不认为保留变量是个好主意.是否有任何其他未使用的html属性,并且在语义上正确用于此目的.我在考虑使用NAME属性,使用jquery操作它会不错?
我可以有一些空的12,但是我不认为将这个div的值用作变量是一个好主意.
在HTML元素中用作变量有什么好主意?
我有:
function dosomething(data) {
alert($(this).attr('class'))
$(this).children('img').attr('title', data)
}
$('.test').bind('mouseover', function() {
$.get('/inc/ajax-function.asp?action=check', dosomething);
})
Run Code Online (Sandbox Code Playgroud)
现在这显然不起作用.我想做的是:
当调用.get时,将rresult转换为数据(这可行),并将结果放在img的标题中,该标记是您鼠标悬停的链接的子项.如何获得函数的$(this)值?
<a class='test' href='book.asp><img src='image.gif' title='' /></a>
Run Code Online (Sandbox Code Playgroud)
感谢您提供2个好的解决方案.在这种情况下,我不知道哪一个更"更好",更快,更"标准".
我有HTML:
<div id="ingredients">
<p itemprop="ingredients">30 dag beans</p>
<p itemprop="ingredients">around 1,5 liter of water </p>
</div>
Run Code Online (Sandbox Code Playgroud)
我有javascript:
$('#ingredients').html(
function (i, text) {
return text.replace(/>([\d,]+)/g, '<span>$1</span>');
});
Run Code Online (Sandbox Code Playgroud)
正则表达式应该用'test'替换第一个数字,因为在数字之前有> tag.它不应该替换第二个数字(我们使用,对于数字小数),因为之前有空格.
所以我希望它只替换段落开头有数字的成分,而不是段落中间有数字的成分.
为什么不起作用?如果我在正则表达式中省略了>它可以工作,但是替换所有数字,甚至是在序列中间的数字.
如果我正确理解jquery和javqascript,它是异步的.我无法理解的是,如果只是ajax部分,负载和get ...或者一般的所有内容都是异步的.
例如,如果我需要在表单中附加列表菜单并具有:
$('#id').append("<option value='1'>1</option>") - etc., in this demo the <select id="category> is missing
Run Code Online (Sandbox Code Playgroud)
现在我想:
$('#category option[value="1"]').attr('selected', 'selected');
Run Code Online (Sandbox Code Playgroud)
当然,我希望在菜单被添加之后选择值1,而不是之前,因为它不存在.
我想知道等待直到追加的脚本是否完成,并且一个接一个地写两条线或者是否需要在第一条线上放置一些回调函数以便第二条线在追加完成后执行?
它可以在我的浏览器上运行,但是我有一台快速的计算机,我担心它会在选择偶数附加之前尝试选择一些慢速,如果它是异步的话.
或者只是ajax调用asynchronius?这是一个显而易见的初学者,但没有好的关键词,我可以找到这个基本的东西,所以我在这里问.
jquery ×6
mysql ×5
ajax ×1
asynchronous ×1
calendar ×1
datepicker ×1
galleria ×1
get ×1
javascript ×1
regex ×1
sorting ×1
sql ×1
synonym ×1
this ×1
variables ×1