小编Mar*_*rcM的帖子

在WHERE子句中重用计算列

在SELECT语句中,我想在WHERE子句中重用计算列.有没有办法在SQLserver中这样做?

简化示例:

工作,但重复计算:

SELECT field1, concat(field2, field3) AS calc_field
  FROM MyTable
  WHERE concat(field2, field3) LIKE 'A%'
Run Code Online (Sandbox Code Playgroud)

期望:

SELECT field1, concat(field2, field3) AS calc_field
  FROM MyTable
  WHERE calc_field LIKE 'A%'
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

5
推荐指数
2
解决办法
2524
查看次数

Tan()函数返回错误的值

我遇到了一些代码问题,但找不到错误.我正在尝试计算下面草图上用红色标记的距离.

我的代码返回值:-41.63

正确的价值是:3.75

我的代码:

return round(6.5 * tan(30),2);
Run Code Online (Sandbox Code Playgroud)

基于:http: //php.net/manual/en/function.tan.php

在此输入图像描述

我认为这将是一个简单的任务,但我撞墙 - 看不到错误.我希望你们中的一些人能指出我正确的方向.

谢谢,

肯尼斯

php math trigonometry formula

3
推荐指数
1
解决办法
91
查看次数

SublimeText 3的PHP语法表现得像HTML语法(用于评论)

我正在编辑Sublime Text 3中保存的.php文件(构建3126 for mac),当我尝试使用cmd+ 注释某些内容时/,Sublime会插入标准HTML注释

<!-- -->
Run Code Online (Sandbox Code Playgroud)

当我尝试使用DocBlocks,/**/,#或//时,Sublime不会注释掉.

我已经检查过,Sublime目前已经设置为PHP语法,应该是这样.Build System设置为Automatic.有没有人经历过这个,你知道修复吗?我在StackExchange的任何地方都找不到这个问题,我在Google上找到的唯一一件事就是:

https://forum.sublimetext.com/t/cant-set-syntax-to-php/7478/8

由于他们的症状与我的症状并不完全相符,我想我会先问到这里,直到清除我不太了解的缓存.

php sublimetext3

2
推荐指数
1
解决办法
144
查看次数

未知列“STRICT_ALL_TABLES”,设置 CodeIgniter 数据库连接

设置一个新的 CodeIgniter 3 项目我遇到了数据库访问问题。访问我的主页时,我得到:

'Unknown column 'STRICT_ALL_TABLES,' in 'field list'
Run Code Online (Sandbox Code Playgroud)

...当 Codeigniter 初始化数据库时触发。后mysqli/mysqli_driver.php电话parent::__construct()

经过一些代码和谷歌研究后,我不清楚为什么会发生这种情况。任何提示?建议?

一些细节

使用相同的数据库连接,我在同一台开发计算机上成功使用了其他 PHP 设置。(使用较旧的 codeigniter 版本)

我使用 CodeIgniter 3.1.10,与ci3-fire-starter一起安装

我的数据库配置:

$active_group = 'default';
$query_builder = TRUE;

$db['default'] = array(
    'dsn'          => '',
    'hostname'     => '127.0.0.1',
    'username'     => 'my_username', 
    'password'     => 'my_password',
    'database'     => 'my_db',
    'dbdriver'     => 'mysqli',
    'dbprefix'     => '',
    'pconnect'     => FALSE,
    'db_debug'     => TRUE,
    'cache_on'     => FALSE,
    'cachedir'     => '',
    'char_set'     => 'utf8',
    'dbcollat'     => 'utf8_general_ci',
    'swap_pre'     => '', …
Run Code Online (Sandbox Code Playgroud)

php mysql mysqli codeigniter-3

2
推荐指数
1
解决办法
1231
查看次数

使用组内的增量编号更新表行

我需要更新一个表,以便同一“组”(示例中为“代码+颜色”)的行在该组中获得一个递增的数字。每个组的行应编号为1、2、3 ...

id   | Code | Color   |Required_New_field
--------------------------
1231 |001   |Red      | 1
1232 |001   |Red      | 2
1233 |002   |Red      | 1
1234 |001   |Red      | 3
1235 |001   |Blue     | 1
1236 |002   |Red      | 2
1237 |001   |Blue     | 2
1238 |002   |Blue     | 1
1239 |002   |Red      | 3
...
Run Code Online (Sandbox Code Playgroud)

在示例中,Code = 001和Color = Red的行应分别获得1、2、3。

我尝试了使用子查询和“分组依据”的几种方法,但是我意识到这实际上不是正确的方法。

任何提示将不胜感激!

编辑: ROW_NUMBER()个答案很棒!可悲的是,我必须在旧的sql_server 2000版本上运行它。ROW_NUMBER()在2005年及更高版本上可用(有关详细信息,请参见此处)。还有其他选择吗?

sql sql-server sql-server-2000

1
推荐指数
1
解决办法
252
查看次数