草庐IT

date_time_formatter

全部标签

MySQL 查询 : Is there a better way to get users who are X years old or older based on birth_date date field

我目前将用户的出生日期存储为DATE字段,默认值为0000-00-00。例如,我使用此查询来获取30岁或以上的用户。SELECT*FROMmyUsersWHEREbirth_date!='0000-00-00'ANDDATE(birth_date)这是获得我想要的结果的正确sql查询吗?(获取年龄大于或刚好30岁的用户)它是否可以改进/优化? 最佳答案 它并不总是错误的,但我不喜欢用0000-00-00存储日期作为默认值,请使用NULL代替(除非它有特殊含义,并且您必须将其与NULL区分开来)。那么你正在使用DATE()函数从日期时

php - Codeigniter 将部分 CSV 数据插入 MYSQL 只有 id 和 date

您好,我正在尝试通过上传CSV将数据插入mysql表。但我收到一个错误。上传显示错误并仅插入ID和日期。我不知道可能的原因。首先,我将用户表从MYSQL导出为csv格式。现在我使用我的代码上传相同但不起作用下面是我的代码:我做了Print_r($file_data);所以得到这个Array([file_name]=>users_(2)3.csv[file_type]=>text/plain[file_path]=>/var/www/Test/uploads/[full_path]=>/var/www/Test/uploads/users_(2)3.csv[raw_name]=>user

php - 将时间字符串存储到 Laravel 中的 TIME 列

我使用时间选择器获取时间字符串(例如:“1:00am”或“12:00pm”)。我需要将其修改并存储在mysqlTIME数据类型列中,例如:'12:00:00'。现在,由于TIME列以24小时格式存储,我需要“修改”它。我似乎找不到使用Carbon进行修改的任何帮助,因为我没有使用任何日期。我在Laravel中使用了一个mutator,但想知道是否有更好的方法,比如对日期使用Carbon。publicfunctionsetTimeAttribute($time){if(substr($time,-2,0)=='am'){//donothing}elseif(substr($time,-2

mysql - 获取 MAX(date) < X 的数据

我有两个具有一对多关系的表。Table1IDnameemailTable2IDtable1_IDdate我需要从Table1where获取所有数据:MAX(date)fromTable2这行不通。Max在where子句中被认为是“无效的”。我所做的是:SELECTTable1.name,Table1.email,tmp.maxdateFROMTable1JOIN(SELECTMAX(date)maxdate,table1_IDFROMTable2GROUPBYtable1_ID)astmpONtmp.table1_ID=table1.idWHEREtmp.maxdate所以这行得通。但

PHP-jQuery : Display a timer on each table row where end time is not set

我有一个显示计数计时器的函数,但我只能让它对单行起作用。我想让一个计时器出现在尚未设置操作结束时间的每一行上。这是完整的代码。$('document').ready(function(){varuni_id=//valueofidneededtoquerythedatabasetable;$.ajax({type:'POST',url:'get_time.php',dataType:'json',data:{uni_id:uni_id},cache:false,success:function(result){for(vari=0;i=2)?days:'0'+days;hours=(S

mysql - 从列中提取 SQL DATE

我有一个表“日程表”和列“travel_date”。travel_date中有一个“预定义日期”。我想再用“5天”更改该列。喜欢UPDATEScheduleSETtravel_date=''+5days;我用过更新时间表SETtravel_date=(travel_date+5);效果如何? 最佳答案 在MySQL中你可以这样做UPDATEcustomerSETregister_date=DATE_ADD(register_date,INTERVAL5DAY) 关于mysql-从列中提取

mysql - SELECT date BETWEEN dates with interval 日期

我的数据库中有一个日期列。我使用SELECTCOUNT来计算今天和15天前之间的行数:SELECTcount(date)asdateFROM`inv`WHEREuser_id='2'ANDdateBETWEENCURDATE()-INTERVAL15DAYANDCURDATE()此SQL语句有效。但现在我想使用SELECTCOUNT来计算今天(-15天)和30天前之间的行。但是当我尝试以下语句时出现错误:SELECTcount(date)asdateFROM`inv`WHEREuser_id='2'ANDdateBETWEENdate(CURDATE(),INTERVAL-15day)

Mysql - 如果表中有重复项,则根据date_created列选择最旧的

我有一张表,其中存储了讲师的可用讲座日期。结构是这样的:+--------------+--------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+--------------+--------------+------+-----+---------+----------------+|id|int(11)|NO|PRI|NULL|auto_increment||lecturer_id|int(11)|NO||NULL|||kraj_id|varchar(500)

mysql - STR_TO_DATE 作为列,但未找到列

这个查询有什么问题:select*,STR_TO_DATE(start,'%d/%m/%Y')asdate_formatfromdateswheredate_format>=2018-03-19错误:Columnnotfound:1054Unknowncolumn'date_format'in'whereclause' 最佳答案 您不能在where子句中使用列别名。MySQL有一个扩展,您可以在having子句中执行此操作(无需进行任何聚合)。所以你可以这样做:selectd.*,STR_TO_DATE(start,'%d/%m/%

MySQL 5.7 : Invalid default value for 'event_end_date'

我们正在将我们的应用程序从MySQL5.5迁移到5.7。由于在严格模式下MySQL5.7中的日期字段不再允许默认值0000-00-00,我想将默认值更改为NULL。相关字段定义如下:+------------------+----------------------+------+-----+------------+----------------+|Field|Type|Null|Key|Default|Extra|+------------------+----------------------+------+-----+------------+---------------